首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无依赖性的最快C++信号/时隙Lib

无依赖性的最快C++信号/时隙Lib
EN

Stack Overflow用户
提问于 2010-03-11 00:08:03
回答 3查看 8.5K关注 0票数 11

我将使用信号和插槽将数据向上/向下传递到一个5-10层的对象。这将导致每秒几千个信号。这远远不是“我点击了一个按钮”。我的所有对象也会在大约每隔100ms的定时器上向他们发出信号,这样他们就可以进行一些处理。

什么是最快的C++信号/插槽实现,它会很小,并且不需要boost等其他库。(我需要保持我的二进制文件的总大小非常小)。

我看过libSigC++,sigSlot,Cpp-事件

EN

回答 3

Stack Overflow用户

发布于 2011-05-07 05:04:47

pbhogan的Signals怎么样:

https://github.com/pbhogan/Signals

它非常快(使用Don Clugston编写的FastDelegate代码-Ismael也提到过),而且非常容易使用。我已经使用它一段时间了,没有任何问题。

票数 6
EN

Stack Overflow用户

发布于 2010-03-11 00:19:54

通常,信号库的设计目的是为了便于使用,而不是考虑到高性能。你可以检查这个article,这可能对你追求快速执行很有帮助。

在你的情况下,我会开始尝试更简单的,比如sigslot。但在这种情况下我不会使用信号库...可能是某种消息队列,带有某种时间戳。

票数 4
EN

Stack Overflow用户

发布于 2010-07-21 20:25:37

即使是最复杂和功能丰富的信号/槽库也是相当轻量级的。在大多数情况下,信号发出的速度可与虚函数调用相媲美。在使用诸如boost::signals和libsigc++之类的模板驱动的库的情况下,您可以获得与传递函数指针基本相同的性能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2418422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档