如何等待1个线程等待另一个线程在qt中执行。
我尝试使用Qt::BlockingQueuedConnection
,但两个线程都在等待
我的程序是这样的:一个线程是A,其他线程是B,在线程A发送信号到命令线程B工作,然后在线程B发送信号到命令线程A工作
ExecuteTask类:
class ExecuteTask : public QObject
{
void doWork()
{
//do something
emit toShow();
}
}
namespace Ui {
class ShowData;
}
class ShowData : public QWidget
{
connect(this , &ShowData::toDoThing, myTask,
&ExecuteTask::doWork, Qt::BlockingQueuedConnection);
connect(myTask , &ExecuteTask::toShow, this,
&ShowData ::dealShowData, Qt::BlockingQueuedConnection);
}
void ShowData::dealShowData()
{
emit toDoThing();
}