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