0

我是 C++ 和 Qt 的新手,我想知道如果我发出一个signalin object1running inthread1到另一个object2running in anotherthread2并且object2正在运行一个无限循环进行处理会发生什么?因为in忙于运行循环 ,所以永远不会调用slotin吗?object2thread2

4

1 回答 1

2

我是 C++ 和 Qt 的新手,我想知道如果我在 thread1 中运行的 object1 中向另一个在另一个 thread2 中运行的 object2 发出信号,并且 object2 正在运行一个无限循环进行处理,会发生什么?由于 thread2 正忙于运行循环,object2 中的插槽是否永远不会被调用?

是和不是。

如果你不处理事件,那么线程就不会像你期望的那样处理事件、信号和槽。

但是,您可以在那里创建一个事件循环,它偶尔会处理传入的事件,然后它会按照您的预期工作。

对于希望获得有关该主题的更详细信息的人,可以在此处获得比这更长的解释。

于 2013-12-29T12:42:25.767 回答