├── CMakeLists.txt ├── LICENSE ├── README.md ├── ext ├── gmock │ └── CMakeLists.txt └── gtest │ └── CMakeLists.txt ├── include └── disruptor4cpp │ ├── batch_event_processor.h │ ├── disruptor4cpp.h │ ├── event_handler.h │ ├── exceptions │ ├── alert_exception.h │ ├── insufficient_capacity_exception.h │ └── timeout_exception.h │ ├── fixed_sequence_group.h │ ├── multi_producer_sequencer.h │ ├── no_op_event_processor.h │ ├── producer_type.h │ ├── ring_buffer.h │ ├── sequence.h │ ├── sequence_barrier.h │ ├── sequencer_traits.h │ ├── single_producer_sequencer.h │ ├── utils │ ├── cache_line_storage.h │ └── util.h │ └── wait_strategies │ ├── blocking_wait_strategy.h │ ├── busy_spin_wait_strategy.h │ ├── lite_blocking_wait_strategy.h │ ├── phased_backoff_wait_strategy.h │ ├── sleeping_wait_strategy.h │ ├── timeout_blocking_wait_strategy.h │ └── yielding_wait_strategy.h └── test ├── dummy_sequence_barrier.h ├── fixed_sequence_group_test.cpp ├── main.cpp ├── multi_producer_sequencer_test.cpp ├── sequence_barrier_test.cpp ├── sequencer_test.cpp ├── support └── stub_event.h ├── utils ├── count_down_latch.h └── thread_barrier.h └── wait_strategies ├── busy_spin_wait_strategy_test.cpp ├── phased_backoff_wait_strategy_test.cpp ├── sequence_updater.h ├── sleeping_wait_strategy_test.cpp ├── timeout_blocking_wait_strategy_test.cpp ├── wait_strategy_test_util.h └── yielding_wait_strategy_test.cpp /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/README.md -------------------------------------------------------------------------------- /ext/gmock/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/ext/gmock/CMakeLists.txt -------------------------------------------------------------------------------- /ext/gtest/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/ext/gtest/CMakeLists.txt -------------------------------------------------------------------------------- /include/disruptor4cpp/batch_event_processor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/batch_event_processor.h -------------------------------------------------------------------------------- /include/disruptor4cpp/disruptor4cpp.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/disruptor4cpp.h -------------------------------------------------------------------------------- /include/disruptor4cpp/event_handler.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/event_handler.h -------------------------------------------------------------------------------- /include/disruptor4cpp/exceptions/alert_exception.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/exceptions/alert_exception.h -------------------------------------------------------------------------------- /include/disruptor4cpp/exceptions/insufficient_capacity_exception.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/exceptions/insufficient_capacity_exception.h -------------------------------------------------------------------------------- /include/disruptor4cpp/exceptions/timeout_exception.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/exceptions/timeout_exception.h -------------------------------------------------------------------------------- /include/disruptor4cpp/fixed_sequence_group.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/fixed_sequence_group.h -------------------------------------------------------------------------------- /include/disruptor4cpp/multi_producer_sequencer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/multi_producer_sequencer.h -------------------------------------------------------------------------------- /include/disruptor4cpp/no_op_event_processor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/no_op_event_processor.h -------------------------------------------------------------------------------- /include/disruptor4cpp/producer_type.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/producer_type.h -------------------------------------------------------------------------------- /include/disruptor4cpp/ring_buffer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/ring_buffer.h -------------------------------------------------------------------------------- /include/disruptor4cpp/sequence.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/sequence.h -------------------------------------------------------------------------------- /include/disruptor4cpp/sequence_barrier.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/sequence_barrier.h -------------------------------------------------------------------------------- /include/disruptor4cpp/sequencer_traits.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/sequencer_traits.h -------------------------------------------------------------------------------- /include/disruptor4cpp/single_producer_sequencer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/single_producer_sequencer.h -------------------------------------------------------------------------------- /include/disruptor4cpp/utils/cache_line_storage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/utils/cache_line_storage.h -------------------------------------------------------------------------------- /include/disruptor4cpp/utils/util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/utils/util.h -------------------------------------------------------------------------------- /include/disruptor4cpp/wait_strategies/blocking_wait_strategy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/wait_strategies/blocking_wait_strategy.h -------------------------------------------------------------------------------- /include/disruptor4cpp/wait_strategies/busy_spin_wait_strategy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/wait_strategies/busy_spin_wait_strategy.h -------------------------------------------------------------------------------- /include/disruptor4cpp/wait_strategies/lite_blocking_wait_strategy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/wait_strategies/lite_blocking_wait_strategy.h -------------------------------------------------------------------------------- /include/disruptor4cpp/wait_strategies/phased_backoff_wait_strategy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/wait_strategies/phased_backoff_wait_strategy.h -------------------------------------------------------------------------------- /include/disruptor4cpp/wait_strategies/sleeping_wait_strategy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/wait_strategies/sleeping_wait_strategy.h -------------------------------------------------------------------------------- /include/disruptor4cpp/wait_strategies/timeout_blocking_wait_strategy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/wait_strategies/timeout_blocking_wait_strategy.h -------------------------------------------------------------------------------- /include/disruptor4cpp/wait_strategies/yielding_wait_strategy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/include/disruptor4cpp/wait_strategies/yielding_wait_strategy.h -------------------------------------------------------------------------------- /test/dummy_sequence_barrier.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/dummy_sequence_barrier.h -------------------------------------------------------------------------------- /test/fixed_sequence_group_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/fixed_sequence_group_test.cpp -------------------------------------------------------------------------------- /test/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/main.cpp -------------------------------------------------------------------------------- /test/multi_producer_sequencer_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/multi_producer_sequencer_test.cpp -------------------------------------------------------------------------------- /test/sequence_barrier_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/sequence_barrier_test.cpp -------------------------------------------------------------------------------- /test/sequencer_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/sequencer_test.cpp -------------------------------------------------------------------------------- /test/support/stub_event.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/support/stub_event.h -------------------------------------------------------------------------------- /test/utils/count_down_latch.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/utils/count_down_latch.h -------------------------------------------------------------------------------- /test/utils/thread_barrier.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/utils/thread_barrier.h -------------------------------------------------------------------------------- /test/wait_strategies/busy_spin_wait_strategy_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/wait_strategies/busy_spin_wait_strategy_test.cpp -------------------------------------------------------------------------------- /test/wait_strategies/phased_backoff_wait_strategy_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/wait_strategies/phased_backoff_wait_strategy_test.cpp -------------------------------------------------------------------------------- /test/wait_strategies/sequence_updater.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/wait_strategies/sequence_updater.h -------------------------------------------------------------------------------- /test/wait_strategies/sleeping_wait_strategy_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/wait_strategies/sleeping_wait_strategy_test.cpp -------------------------------------------------------------------------------- /test/wait_strategies/timeout_blocking_wait_strategy_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/wait_strategies/timeout_blocking_wait_strategy_test.cpp -------------------------------------------------------------------------------- /test/wait_strategies/wait_strategy_test_util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/wait_strategies/wait_strategy_test_util.h -------------------------------------------------------------------------------- /test/wait_strategies/yielding_wait_strategy_test.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alexleemanfui/disruptor4cpp/HEAD/test/wait_strategies/yielding_wait_strategy_test.cpp --------------------------------------------------------------------------------