Re: [閒聊] 各種神人的code

作者: 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
作者: saladim (殺拉頂)   2014-09-23 02:12:00
這個跟 pthread_cond_wait 有一點點類似...不知道這段code最後變成什麼樣子跟引發了什麼bug XDDD
作者: bluesoul (忙死你老爸)   2014-09-23 17:07:00
裡面是用pthread_cond_wait 實做

Links booklink

Contact Us: admin [ a t ] ucptt.com