当前位置:   article > 正文

QT线程同步技术详解_qt 线程同步

qt 线程同步

一、线程同步概念

二、QT线程同步技术简介

2.1初级锁

2.2读写锁

2.3条件锁

三、QT线程同步应用详解

3.1初级锁

3.2读写锁

3.3条件锁


一、线程同步概念

        线程同步,广义上的概念一般指多线程间对资源“读”与“写”权限的管理策略,为了避免数据冲突与数据不一致,关于此概念,网上介绍很多,在此不赘述。

二、QT线程同步技术简介

2.1初级锁

        对需要保护的资源上锁,独占式使用,如:公厕的蹲坑,一次只能一人用,你进入了,你就会反锁,别人就进不去,这就是初级的独占式上锁。

        QT提供了相关的类QMutex,有lock和unlock函数,成对使用。

2.2读写锁

        为了更高效的利用资源,QT提供了读写权限分离锁QReadWriteLock,有以下4种应用场景:

        A:我在读的时候,你也可以读:一起看看无所谓,又不会看坏;

        B:我在读的时候,你不可以写:我读的时候,你不能动手,以免我看得眼花缭乱;

        C:我在写的时候,你不可以读:我动手时,你别看,以免你看不真切;

        D:我在写的时候,你不可以写:我动手时,你可别动手,搞不清楚到底谁动的手;

        以上,写的时候必须独占,读的时候可以共享读权限,但是也不能写,此机制提高了读的效率,简而言之,大家一起看看是可以的,但是谁都不能动手(修改)

2.3条件锁

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/865468
推荐阅读
相关标签
  

闽ICP备14008679号