首页| 论坛| 消息

标题:多线程共享缓冲区问题,求解
作者:shixingya
日期:2018-03-09 18:21
内容:

在进程中,声明了static QList cacheList ; 作为全局缓存结构
在主线程中会读取cacheList 中的数据
在n个子线程中 会修改cacheList 中的数据,
子线程run中 我通过QMutex加锁, 主线程用cacheList 的时候需要加锁吗?


#1 [hitler++ 03-12 02:02]
必须加锁
用 std::shared_mutex
读的时候 std::shared_lock(xxxx)
写的时候 std::unique_lock(xxxx)
#2 回 hitler++ 的帖子 [shixingya 03-12 09:45]
hitler++:必须加锁
用 std::shared_mutex
读的时候 std::shared_lock(xxxx)
....... (2018-03-12 02:02) 
可是加锁 会导致速度变慢呀

回复 发表
主题 版块