作者:
bluesoul (å¿™æ»ä½ è€çˆ¸)
2014-09-23 01:03:46※ 引述《saxontai (黑暗,點綴孤零零的星)》之銘言:
: 看到同事寫的 calibration tool (Qt-based & multithreading)
: 程式碼中有以下這段:
: ClearMutex.lock(); // 鎖住
: wait.wait(&ClearMutex); // 等解鎖
: ClearMutex.unlock(); // 解鎖
: 我能說啥呢? (煙)
這段是正確的
wait.wait(&ClearMutex) 會把ClearMutext解開,然後等待被喚醒
(http://qt-project.org/doc/qt-4.8/qwaitcondition.html#wait)
喚醒後會重新鎖上ClearMutext所以和ClearMutext.unlock()中間可以做一些事情
wait.wait(&ClearMutext);
...
ClearMutext.unlock();
不過也有例子是不做事,只是單純的需要wait
比方說:http://qt-project.org/doc/qt-4.8/threads-waitconditions.html