Commit 1896b1d7 by xiongziliang

优化代码

parent 45c5f1ec
...@@ -210,17 +210,18 @@ public: ...@@ -210,17 +210,18 @@ public:
* @param frame 帧 * @param frame 帧
*/ */
void inputFrame(const Frame::Ptr &frame) override{ void inputFrame(const Frame::Ptr &frame) override{
//_delegates_read能确保是单线程操作的
for(auto &pr : _delegates_read){
pr.second->inputFrame(frame);
}
if(_need_update){ if(_need_update){
//发现代理列表发生变化了,这里同步一次 //发现代理列表发生变化了,这里同步一次
lock_guard<mutex> lck(_mtx); lock_guard<mutex> lck(_mtx);
_delegates_read = _delegates_write; _delegates_read = _delegates_write;
_need_update = false; _need_update = false;
} }
//_delegates_read能确保是单线程操作的
for(auto &pr : _delegates_read){
pr.second->inputFrame(frame);
}
} }
private: private:
mutex _mtx; mutex _mtx;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论