在線程中定義一個信號量:
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