Qt中暂停线程的执行

在线程中定义一个信号量
QMutex pause;

把run()函数中循环执行的部分用信号量pause锁住:

    void run()
{
while(1)
{
pause.lock();
//循环执行的内容,比如视频播放
pause.unlock();
}
}

在主线程(UI线程)中,如果想暂停线程执行,就将pause加锁:

thread->pause.lock(); //thread是线程指针

如果想继续线程,就将pause解锁:

thread->pause.unlock();
上一篇:Java并发1——线程创建、启动、生命周期与线程控制


下一篇:PHP协程使用场景