SPSCQueue is a bounded single-producer, single-consumer queue written in C++11 for high-performance inter-thread communication. It is both lock-free and wait-free within its intended one-producer and one-consumer model. The queue provides blocking and nonblocking insertion methods along with direct access to the element at the front. Items can be inserted through copy, move, or in-place construction. Benchmarks published by the project show lower latency and higher throughput than several comparable queue implementations on the tested hardware. Its fixed-size structure avoids repeated allocation during normal queue operations. The header-only design makes it useful for real-time, low-latency, and producer-consumer applications where predictable synchronization overhead matters.
Features
- Single-producer single-consumer design
- Lock-free and wait-free operation
- Fixed-capacity queue storage
- Blocking and nonblocking insertion
- In-place element construction
- Header-only C++11 implementation