Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/125.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++信号/时隙:时隙处理和最佳C++信号库?_C++_Signals_Signals Slots - Fatal编程技术网

C++信号/时隙:时隙处理和最佳C++信号库?

C++信号/时隙:时隙处理和最佳C++信号库?,c++,signals,signals-slots,C++,Signals,Signals Slots,我目前有一个程序,它使用忙池和一堆线程来监视对象状态、处理数据和传递数据。。这一切都很难管理/浪费cpu时间。我正在考虑删除线程并使用signal/slot,因为我的代码中没有一个是阻塞的 所以我会给对象的状态发信号,这很简单。更难的是,我还想使用插槽发送数据信号,并传递数据 基本上: A->SignalIHAVEDATAB.slot和C.slot B和C可能无法处理数据。所以我应该在B和C中保留一个标志,告诉他们它们是数据。或者我应该每X毫秒重新发送一次信号,直到数据采集完毕 还有 假设B接受

我目前有一个程序,它使用忙池和一堆线程来监视对象状态、处理数据和传递数据。。这一切都很难管理/浪费cpu时间。我正在考虑删除线程并使用signal/slot,因为我的代码中没有一个是阻塞的

所以我会给对象的状态发信号,这很简单。更难的是,我还想使用插槽发送数据信号,并传递数据

基本上: A->SignalIHAVEDATAB.slot和C.slot B和C可能无法处理数据。所以我应该在B和C中保留一个标志,告诉他们它们是数据。或者我应该每X毫秒重新发送一次信号,直到数据采集完毕

还有

假设B接受数据。在B.槽中,它接受handleToA->getData;&&处理数据&&另一件事

如果我发出信号a,并且在slotA内发出信号B,那么在slotA返回之前是否会处理slotB?如果这条链条很长,斯洛塔可能需要一段时间才能回来


感谢您的帮助:

当然是最好的信号和插槽库。 它是可移植的、线程安全的、基于模板的且仅限于头。你会喜欢的


是的。我知道你一年前问过这个问题,但我不能不回答。

最好的信号和插槽库当然是。 它是可移植的、线程安全的、基于模板的且仅限于头。你会喜欢的


是的。我知道你一年前问过这个问题,但我不能不回答。

你研究过Qt框架吗?相关:你研究过Qt框架吗?相关: