Qt中暫停線程的執行(利用QMutex,超級簡單明了)


在線程中定義一個信號量:


QMutex pause;
把run()函數中循環執行的部分用信號量pause鎖住:


void run()
{
while(1)
{
pause.lock();
//循環執行的內容,比如視頻播放
pause.unlock();
}
}


在主線程(UI線程)中,如果想暫停線程執行,就將pause加鎖:


thread->pause.lock(); //thread是線程指針
如果想繼續線程,就將pause解鎖:
thread->pause.unlock();

 

http://www.voidcn.com/blog/masikkk/article/p-5887346.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM