Какая из существующих коллекций данных в C / C ++ является наиболее подходящей по функциональности близкой к коллекции (библиотеке) Disruptor на яве?
http://lmax-exchange.github.io/disruptor/
Небольшое описание:
Это чрезвычайно быстрая альтернатива, использующая очереди сообщений в многопоточных программах. Framework, который «механически симпатизирует» оборудованию, на котором работает, и он не блокируется. И много усилий, чтобы избежать блокировки, CAS, даже барьер памяти.
Подробнее об этом читайте в обсуждении: Как работает схема разрушения LMAX?
Если вам нужна та же функциональность, используйте очередь с защитой мьютекса. Если вам нужна такая же производительность, вы должны заново реализовать алгоритм разрушения в C ++ или попробовать этот проект с открытым исходным кодом: https://code.google.com/p/disruptor-cpp/
А для тех, кто не знает, Disruptor (неудачное имя) — это метод передачи сообщений, который использует алгоритмы без блокировок и уделяет пристальное внимание таким вопросам, как конфликты кэша, чтобы обеспечить очень высокую производительность в тех случаях, когда его можно использовать. Компания под названием LMAX придумала это и назвала это. Мартин Фаулер (из Refactoring Fame) является сторонником этого.
Да, уже есть функциональный порт C ++. Увидеть https://github.com/fsaintjacques/disruptor—