QMPSC --- inherits from Q repo (https://github.com/KjellKod/Q) but will be dedicated solely to MPSC queues (multi producer, single consumer)
This is a DRAFT of what might come there. This REPO is NOT YET READY to be used.
Collection of public domain queue's by KjellKod All queues are in-process, thread-to-thread queues.
- SPSC: single producer, single consumer
- Any more threads than 1 on each side will break the thread safety guarantees for the SPSC queues
lock-free fixed_circular_fifo
: compiled time fixed in sizelock-free flexible_circular_fifo
: runtime, at construction, set max size of queue or set to unlimited in size
- MPMC: multiple producer, multiple consumer
lock flexible-lock-queue
: runtime, at construction, set max size of queue or set to unlimited in size
- MPSC: multiple producer, singe consumer
flexible or fixed lock-free circular fifo
: Using fair scheduling the many SPSC queues are consumed in an optimized round-robin manner
- SPMC: single producer, multiple consumer
flexible or fixed lock-free circular fifo
: Using fair scheduling the producer transfers over many SPSC queues