线程 wait()方法----------------------------很重要

来源:互联网 发布:tomcat 8.5 java 编辑:程序博客网 时间:2024/06/10 10:40

QThread::wait(),

一直以来我以为它阻塞的是QThread对象,可是我现在明白,

原来阻塞的是这个对象所在的线程(通常是主线程)


比如:

在主线程中,有个线程实例,pThread。

调用pThread->wait()后。

主线程被阻塞了。

直到pThread安全退出,或者wait()超时了。

主线程才会继续执行,即执行pThread->wait()的下一条语句。


相当于windows 中的,WaitForSingleObject( pThread )。

即,当pThead为激活状态的时候,主线程才会继续往下执行。


调用pThread->wait()后。

wait()返回了,表明,pThread子线程真正的完成了,即退出了run()函数。

This function will return true if the thread has finished.

0 0