具有多个线程的Qt应用程序
Qt application with multiple threads
我有一个QT应用程序。
我有一个线程(例如thread1)显示我的主窗口(所以这与主线程不同)。
我还有自己的线程(例如thread2)必须通知thread1更新我的GUI。有什么快速的方法吗?例如:thread2可能决定更新图像:因此,他应通知thread1执行方法changeImage()
。
如果我直接从thread2运行这个方法,我的应用程序就会崩溃。我必须使用pthread。
只有主线程应该更新GUI(由于图形系统的限制)。
然而,Qt增强了跨线程的信号槽连接所允许的线程支持。事实上,其他线程必须使用信号通知主线程(emit my_signal()
参见http://qt-project.org/doc/qt-4.8/signalsandslots.html)或使用CCD_ 3(http://qt-project.org/doc/qt-4.8/qcoreapplication.html#postEvent-2)
相关文章:
- "string.h"在构建适用于iOS的qt应用程序中找不到消息
- 使用 Bazel 编译 QT 应用程序时访问资源
- 将 Crashpad 与 Windows Qt 应用程序集成
- 在Visual Studio中单实例Qt应用程序版本5.11.1中,在所有其他窗口的顶部打开Qt MainWindow
- 在 Ubuntu 服务器上运行 QT 应用程序时崩溃
- 如何在Android设备上解析Qt应用程序的ClassNotFoundEception?
- Qt应用程序找不到第三方DLL并崩溃
- 在 Linux 上部署 Qt 应用程序
- 如何设置Qt应用程序以使用类Unix系统的实际环境变量?
- Android因为权限问题而杀死Qt应用程序
- 初始化和终止Qt应用程序的正确方法?
- Qt 5 应用程序崩溃并出现"qLineEdit::setText"
- 从 ParaView 构建自定义 Qt 应用程序示例时出错
- Qt 应用程序具有意外的 QDir::currentPath
- Qt应用程序不响应鼠标和键盘事件
- 在Qt应用程序中包含Python.h会导致对Qt函数的未定义引用
- 需要有关在qt c ++应用程序中使用崩溃问题的建议
- 从Qt应用程序执行MSI文件
- Qt 应用程序中与Qt版本相关的运行时错误
- 将Qt应用程序与CMake和Visual Studio链接起来