赞
踩
线程同步,广义上的概念一般指多线程间对资源“读”与“写”权限的管理策略,为了避免数据冲突与数据不一致,关于此概念,网上介绍很多,在此不赘述。
对需要保护的资源上锁,独占式使用,如:公厕的蹲坑,一次只能一人用,你进入了,你就会反锁,别人就进不去,这就是初级的独占式上锁。
QT提供了相关的类QMutex,有lock和unlock函数,成对使用。
为了更高效的利用资源,QT提供了读写权限分离锁QReadWriteLock,有以下4种应用场景:
A:我在读的时候,你也可以读:一起看看无所谓,又不会看坏;
B:我在读的时候,你不可以写:我读的时候,你不能动手,以免我看得眼花缭乱;
C:我在写的时候,你不可以读:我动手时,你别看,以免你看不真切;
D:我在写的时候,你不可以写:我动手时,你可别动手,搞不清楚到底谁动的手;
以上,写的时候必须独占,读的时候可以共享读权限,但是也不能写,此机制提高了读的效率,简而言之,大家一起看看是可以的,但是谁都不能动手(修改)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。