c++ - Qt 中的多线程事件处理程序

标签 c++ qt events

有谁知道事件处理程序如何管理发布的事件?

在我的应用程序中,我有两个线程(guiThreadcomputationThread)。抛出异常后,我调用 postEvent(..) 到现有对话框。 Qt-Event-Handler 会阻止这个事件直到对话框关闭。


抱歉,我的问题有点模糊。如果我还有时间,我会写得更准确。我找到了解决办法。但对我来说,这个问题仍然很有趣。

最佳答案

正如 Qt 文档中提到的关于 QCoreApplication::postEvent :

When control returns to the main event loop, all events that are stored in the queue will be sent using the notify() function.

...这解释了为什么 Qt 事件处理程序会保留事件直到对话框关闭。

如果我正确理解你想做什么,我会尝试使用 sendEvent .

关于c++ - Qt 中的多线程事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52772/

相关文章:

c++ - SFINAE的表现和if else

c++ - 使用 JSonCpp 调用纯虚函数

windows - QT中如何从主窗口显示另一个窗口

c# - 你能触发具有自动属性的事件吗?

javascript - 服务器端事件出现错误

C++在数学计算中将double转换为int

c++ - boost 转换产生 Inf 返回值

c++ - 我需要什么 dll 来分发我的 Qt 应用程序?

c++ - 命令在终端中工作,但不是通过 QProcess

c# - 事件处理程序和 C# 类析构函数/处置