设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 4252|回复: 9
打印 上一主题 下一主题

调用BRAC_LeaveRoom死锁

[复制链接]

2

主题

11

帖子

44

积分

新手上路

Rank: 1

积分
44
跳转到指定楼层
楼主
发表于 2014-2-8 10:05:31 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
死锁原因是, VideoData_CallBack我的一个视频数据回调函数正在进行处理,
我想问一下,在用户从界面关闭视频窗口的时候, 在调用BRAC_LeaveRoom前,该做些什么,才能避免这种死锁呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

2

主题

11

帖子

44

积分

新手上路

Rank: 1

积分
44
沙发
 楼主| 发表于 2014-2-8 10:10:24 | 显示全部楼层
视频回调函数是我自己处理的没有使用BRAC_SetVideoPos自动处理视频渲染
回复 支持 反对

使用道具 举报

2

主题

11

帖子

44

积分

新手上路

Rank: 1

积分
44
板凳
 楼主| 发表于 2014-2-8 10:17:04 | 显示全部楼层
我看了所有的日志,都是正常的。就是我想关闭的时候,因为在视频数据回调函数中没有渲染完,所以产生死锁。
你说的AnyChatCoreSDK.UserCameraControl(ID, false); 我都试过了,不过还是一样的问题,死锁。
回复 支持 反对

使用道具 举报

2

主题

11

帖子

44

积分

新手上路

Rank: 1

积分
44
地板
 楼主| 发表于 2014-2-8 10:19:24 | 显示全部楼层
就是两个时机,正好在我主线程调用BRAC_LeaveRoom, 我的视频渲染函数所在的线程还没执行完,
也就是说VideoData_CallBack这个回调函数还没有执行完。然后就死锁了。
回复 支持 反对

使用道具 举报

2

主题

11

帖子

44

积分

新手上路

Rank: 1

积分
44
5#
 楼主| 发表于 2014-2-8 10:20:45 | 显示全部楼层
[2014-02-08 10:01:17(953)]        MinCroppingSize(1920, 1080)        MaxCroppingSize(1920, 1080)        Format(MJPG, 0x8d2181)
[2014-02-08 10:01:17(973)]        Video Config Size(1280, 720)        Format(YUY2, 25fps)
[2014-02-08 10:01:18(139)]        video init finish:1280x720, YUY2, fps:10
[2014-02-08 10:01:18(538)]        video codec init:codec:1, 25fps, 1280x720, bitrate:1000000, quality:3, preset:3, gop:30, handle:2
这是最后的那端日志。
回复 支持 反对

使用道具 举报

2

主题

11

帖子

44

积分

新手上路

Rank: 1

积分
44
6#
 楼主| 发表于 2014-2-8 10:26:46 | 显示全部楼层
我是以浏览器插件的方式来运行的视频插件的。
我认为是不是在调用退出前应该检查一下,视频回调函数有没有在执行,如果在执行的话,等待执行完了再调用BRAC_LeaveRoom,
但是我不明白BRAC_LeaveRoom和VideoData_CallBack这两个调用之间为什么会存在死锁呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|AnyChat ( 粤ICP备13022410号-1 )  

GMT+8, 2024-5-5 11:09 , Processed in 0.151679 second(s), 21 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表