在線程中定義一個信號量
QMutex pause;
把run()函數中循環執行的部分用信號量pause鎖住:
void run() { while(1) { pause.lock(); //循環執行的內容,比如視頻播放 pause.unlock(); } }
在主線程(UI線程)中,如果想暫停線程執行,就將pause加鎖:
thread->pause.lock(); //thread是線程指針
如果想繼續線程,就將pause解鎖:
thread->pause.unlock();