当前位置 : 首页 » 文章分类 :  开发  »  Qt中暂停线程的执行

Qt中暂停线程的执行

在线程中定义一个信号量:

QMutex pause;

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

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

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

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

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

thread->pause.unlock(); 

上一篇 OpenCV2.4.4实现Shi-Tomasi角点检测(goodFeaturesToTrack)

下一篇 OpenCV2.4.4中利用直方图均衡化增强图像对比度(Mat结构实现)

阅读
评论
101
阅读预计1分钟
创建日期 2013-05-21
修改日期 2017-07-11
类别
标签

页面信息

location:
protocol:
host:
hostname:
origin:
pathname:
href:
document:
referrer:
navigator:
platform:
userAgent:

评论