Самый быстрый Lib Сигнала/Слота C++ без зависимости

Я собираюсь передать данные/вниз 5-10 многоуровневых объектов с помощью сигналов и слотов. Который должен привести к нескольким тысячам сигнала в секунду. Который является далекой формой, "Я нажал кнопку". Весь мой объект будет также сигнализировать о них сам на таймере о каждых 100 мс, таким образом, они смогут сделать некоторую обработку.

Что было бы самой быстрой реализацией Сигнала/Слота C++, которая будет маленькой и не потребует другой библиотеки, такой как повышение. (Я должен сохранить общий размер своего Двоичного файла очень небольшим).

Я видел libSigC ++, sigSlot, Cpp-события,

9
задан JP. 10 March 2010 в 06:08
поделиться

2 ответа

Часто библиотеки сигналов разрабатываются для простоты использования, а не с расчетом на высокую производительность. Вы можете проверить эту статью , которая может оказаться полезной при стремлении к быстрому выполнению.

В вашем случае я бы попробовал более простое, например sigslot. Но я бы не стал использовать сигнальную библиотеку при таких обстоятельствах ... возможно, это какая-то очередь сообщений с какой-то меткой времени.

4
ответ дан 3 November 2019 в 01:55
поделиться

Даже самые сложные и многофункциональные библиотеки сигналов/слотов довольно легковесны. Скорость выдачи сигнала в большинстве случаев сравнима с вызовом виртуальной функции. В случае библиотек, основанных на шаблонах, таких как boost::signals и libsigc++, вы получаете практически ту же производительность, что и при передаче указателей функций.

0
ответ дан 3 November 2019 в 01:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: