QT GUI仅用于主线程

搞个多线程差点被GUI坑了T_T

记录一下相关资料:

[1]Qt多线程编程总结(一)

警告:所有的GUI类(比如,QWidget和它的子类),操作系统核心类(比如,QProcess)和网络类都不是线程安全的。

[2]QT 多线程程序设计

尽管QObject是可重入的,但GUI类,特别是QWidget与它的所有子类都是不可重入的。它们仅用于主线程。正如前面提到过的,QCoreApplication::exec()也必须从那个线程中被调用。实践上,不会在别的线程中使用GUI类,它们工作在主线程上,把一些耗时的操作放入独立的工作线程中,当工作线程运行完成,把结果在主线程所拥有的屏幕上显示。

[3]GUI为什么不设计为多线程

猜你喜欢

转载自blog.csdn.net/u013213111/article/details/117309348