qt中如何让代码等待接收信号

How to make the code wait for receiving a signal in qt

我有一个 gui class 和另一个名为 guiThread 的 class。 gui class 作为线程启动 guiThread,借助信号和插槽与 gui 通信。
我在 guiThread 中有一个名为 doAction() 的插槽,我有一个从 gui class 发送到此插槽的信号。
所以我想在 guiThread 中做的是我想做一个 while 循环,等待信号从 gui 发送到 doAction() 插槽,当它收到信号时,插槽做一些计算。
我不知道如何在 while 循环中执行此操作,我什至不知道我想要的是否可行。如果有人能帮助我,我将不胜感激。

你需要初始化一个私有布尔值block=true,然后你等待while(block);的信号。每当您收到信号时,您都会在相应的插槽中进行计算,并在其末尾更新 block=false 。这样,当代码returns到while时,就会传过去继续处理。