Qt多线程同步的总结

在项目中,我是单独对一组数据进行存储(量大的针点数据),方便程序随时调用,生命周期是程序开始到结束,我是用数组进行存储的QVector ,在多线程的情况下,会有生成图片数据的线程还有修改针点数据的线程,为确保数据使用时的一致性,需要线程同步。了解到的方法有

1、QMutex(互斥锁)或者QMutex联手QMutexLocker (遍历类)

2、QReadWriteLock(读写锁)或者QReadWriteLock联手QReadLocker和QWriteLocker

3、QSemaphore(信号量)

4、QWaitCondition(条件触发)

具体介绍可以看Qt线程同步的几种方法,里面总结的比较详细的。

https://blog.csdn.net/qq_40194498/article/details/82389503

 

在数据操作类里加锁,我是使用了读写锁来控制针点数据的存储。还在文件缓存用到。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值