8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

QCoreApplication::quit 是否退出本地事件循环?

Eddú Meléndez 1月前

17 0

我已经多次见过这种模式:QFutureWatcher观察者;观察者.setFuture(QtConcurrent::run([]{ … }));QEventLoop 循环;QObject::connect(&watcher,&decltype(watcher)::

我已经多次见过这种模式:

QFutureWatcher<void> watcher;
watcher.setFuture(QtConcurrent::run([]{ … }));
QEventLoop loop;
QObject::connect(&watcher, &decltype(watcher)::finished, &loop, &QEventLoop::quit);
loop.exec();

我想知道这是否安全,因为如果 qApp->quit(); 退出此事件循环,之后的代码可能不会考虑到线程可能尚未完成。那么 QCoreApplication::quit 会退出本地事件循环吗?即使不退出,这种模式是否可以安全地序列化后台任务?

帖子版权声明 1、本帖标题:QCoreApplication::quit 是否退出本地事件循环?
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Eddú Meléndez在本站《qt》版块原创发布, 转载请注明出处!
最新回复 (0)
返回
作者最近主题: