【发布时间】:2010-02-03 19:46:29
【问题描述】:
我有一个类,它有一个由主线程和 3 个其他线程调用的方法(2 个 QThreads 和 1 个使用 QtConcurrent::run())。在这种方法中,我有时会发出一个信号。这是可以的还是会导致问题,因为我没有发出属于调用线程的信号。
【问题讨论】:
我有一个类,它有一个由主线程和 3 个其他线程调用的方法(2 个 QThreads 和 1 个使用 QtConcurrent::run())。在这种方法中,我有时会发出一个信号。这是可以的还是会导致问题,因为我没有发出属于调用线程的信号。
【问题讨论】:
是的,这完全没问题。 QT 透明地为您进行线程间通信。如果需要触发的插槽在另一个线程中,则信号将排队,并在目标线程进入其事件循环时接收。
您可以尝试一下,看看在调试器中会发生什么。
【讨论】: