相关疑难解决方法(0)

带有movetothread的qt线程

我正在尝试使用线程创建一个程序:主循环开始.当测试返回true时,我创建一个对象,我希望该对象在另一个线程中工作,然后返回并开始测试.

QCoreApplication a(argc, argv);
while(true){
    Cmd cmd;
    cmd =db->select(cmd);
    if(cmd.isNull()){ 
        sleep(2);  
        continue ;
    }
    QThread *thread = new QThread( );
    process *class= new process ();
    class->moveToThread(thread);
    thread->start();

    qDebug() << " msg"; // this doesn't run until  class finish it's work 
}
return a.exec();
Run Code Online (Sandbox Code Playgroud)

问题是,当我启动新线程时,主线程停止并等待新线程的完成.

c++ qt multithreading

16
推荐指数
1
解决办法
5万
查看次数

标签 统计

c++ ×1

multithreading ×1

qt ×1