Windows QtConcurrent::run()导致QWaitCondition销毁消息
我正在尝试使用QtConcurrent::run()方法运行类的函数。线程运行并执行它应该执行的操作。但是,当线程结束时,我在控制台中收到以下错误消息:Windows QtConcurrent::run()导致QWaitCondition销毁消息,windows,multithreading,qt,Windows,Multithreading,Qt,我正在尝试使用QtConcurrent::run()方法运行类的函数。线程运行并执行它应该执行的操作。但是,当线程结束时,我在控制台中收到以下错误消息: QWaitCondition: Destroyed while threads are still waiting 它在Linux上运行良好,没有任何错误消息,但当我关闭应用程序时,应用程序在Windows中崩溃 以下是主要功能的代码: int main(int argc, char *argv[]) { QtSi
QWaitCondition: Destroyed while threads are still waiting
它在Linux上运行良好,没有任何错误消息,但当我关闭应用程序时,应用程序在Windows中崩溃
以下是主要功能的代码:
int main(int argc, char *argv[])
{
QtSingleApplication a(argc, argv);
if(a.isRunning()&&argc==2)
{
a.sendMessage(argv[1]);
return 0;
}
else if (a.isRunning())
{
return 0;
}
testApp w;
testApp.show();
a.setQuitOnLastWindowClosed(false);
if(argc==2)
{
w.showDialog(argv[1]);
}
QObject::connect(&a, SIGNAL(messageReceived(const QString&)),
&w, SLOT(showDialog(QString)));
return a.exec();
}
编辑:
void MyClass::ready()
{
QtConcurrent::run (this,&MyClass::start);
}
void MyClass::start()
{
// do something
}
你能给我举个简单的例子吗
main()
函数几乎什么也没说。