Business *pBusiness = new Business(参数--传过来的值);
QThread *pSubThread = new QThread;
pBusiness ->moveToThread(pSubThread );
connect(pSubThread , SIGNAL(started()), pBusiness , SLOT(start()));//线程启动后,则启动任务
connect(pBusiness , SIGNAL(finish()), pBusiness , SLOT(deleteLater()));//发出自定义业务结束信号,释放业务对象
connect(pBusiness , SIGNAL(destroyed()), pSubThread , SLOT(quit()));//业务对象释放后,线程退出
connect(pSubThread , SIGNAL(finished()), pSubThread , SLOT(deleteLater()));//子线程对象退出则结束,发出结束信号,释放子线程对象
pSubThread->start();// 启动线程
Qt 子线程moveToThread后的安全退出方式
最新推荐文章于 2025-04-21 15:54:43 发布