1:
一个QWaiteCondition(A) 和若干个QMutex(M) 协作 同步若干个QThread。
其中QWaiteCondition(A) 中存在一个列表(listmutex)保存和其协作的QMutex(M1...Mn),每次调用 QWaiteCondition::wakeone()时从此列表中按次序找到一个QMutex的对象 (Mn)激活
通过{
QMutex mut;
mut.lock();
A.wait(mut);//A 是QWaitCondition对象 将mut添加到listmutex中
mut.unlock();
}
2:即有若干个要同步地QTthread 由一个QWaiteCondition 和若干个Qmutex来控制同步。其中一般每个同步点使用一个Qmutex(或每个线程一个QMutex,视实际情况而定),并且使用前要先 lock 再 unlock。QWaiteCondition.listmutex中不会保存重复的QMutex的对象
开始从工作中找乐趣