QT线程同步之读写锁

这个允许多个进程同时读,但是只有一个写。而且写读不能同时进行。

于是可能有以下四种情况:
1、一个线程试图对一个加了读锁的互斥量进行上读锁,允许;
2、一个线程试图对一个加了读锁的互斥量进行上写锁,阻塞;
3、一个线程试图对一个加了写锁的互斥量进行上读锁,阻塞;
4、一个线程试图对一个加了写锁的互斥量进行上写锁,阻塞。
所以可以看出,读写锁比较适用的情况是:需要多次对共享的数据进行读操作的阅读线程。

创建多线程
QT线程同步之读写锁
MyThread线程中进行写操作
QT线程同步之读写锁
MyThread1进行读操作
QT线程同步之读写锁
与此同时MainWindow主线程也在进行读操作
QT线程同步之读写锁