webrtc 的PC Factory 拥有3个线程:

1)signaling_thread_ :所有PC Factory 和PC 的对外接口,都会切换到signaling_thread_ 执行,而PC Observer 所有的回调函数也都在signaling_thread_ 执行。
2) network_thread_:和网络有关的操作都在 network_thread_执行,比如收发数据包、绑定网络端口等。
3) worker_thread_:和网络无关的可能耗时的操作,都在worker_thread_执行。
1 三大线程的使用
1)对外接口线程切换
对PC 接口的调用总是进入到api/peer_connection_proxy.h中,

这就是对外接口的线程切换代码。因为切换线程最终都是向目标线程提交一个任务,但这个过程需要做参数传递,如果要做到阻塞式的线程切换--函数调用得等到提交到目标线程的任务执行完才能返回,一个典型的场景就是要拿到异步任务的返回值。

最低0.47元/天 解锁文章
772

被折叠的 条评论
为什么被折叠?



