Производительность наддува :: сигналы2 - PullRequest
2 голосов
/ 18 ноября 2010

Я переключаюсь с xlobjects на boost :: signal2 в качестве моей структуры сигнал / слот в надежде, что установление соединений, удаление их, передача сигнала и т. Д. Поточно-ориентировано. Меня не интересует межпотоковое излучение сигнала.

Итак, простой вопрос: безопасен ли поток boost :: signal2 для того, чтобы, например, два или более потоков могли устанавливать соединение по одному и тому же сигналу?

Кроме того, повысила ли эффективность boost :: signal2 производительность по сравнению с xlobjects? Это не важно, так как приложение не сильно зависит от сигналов / слотов, но я все же хотел бы знать.

Ответы [ 2 ]

3 голосов
/ 15 мая 2015

форс-сигналы2 безопасны для потоков.

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

2 голосов
/ 18 ноября 2010

Я полагаю, что все ответы, которые вам нужны относительно безопасности потоков в boost.signal, содержатся в документации (краткий ответ: да, boost: signal2 безопасен для потоков).Что касается производительности, я полагаю, что потокобезопасность обходится дорого, но можно быть уверенным только в одном: эталон!

...