最快的C++信号/ Slot Lib没有依赖性

JP.*_*JP. 9 c++ signals signals-slots

我将使用信号和插槽向上/向下传输5-10层对象的数据.这应该导致每秒几千个信号.这是"我点击一个按钮"的形式.我的所有物体也会在每100毫秒的时间内通过计时器发出信号,这样他们就可以进行一些处理了.

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

我见过libSigC++,sigSlot,Cpp-Events,

sid*_*guy 6

pbhogan的信号怎么样:

https://github.com/pbhogan/Signals

它超级快(使用由Don Clugston编写的FastDelegate代码 - Ismael也提到过),并且它非常易于使用.我已经使用它一段时间了,没有问题.

  • 不确定这是否重要,但此实现不是线程安全的。 (2认同)

Ism*_*ael 4

通常信号库的设计是为了易于使用,而不是考虑到繁重的性能。您可以查看这篇文章,在追求快速执行的同时可能会有所帮助。

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