readerwriterqueue
A fast single-producer, single-consumer lock-free queue for C++ (by cameron314)
MPMCQueue.h
A bounded multi-producer multi-consumer concurrent queue written in C++11 (by rigtorp)
Our great sponsors
readerwriterqueue | MPMCQueue.h | |
---|---|---|
4 | 2 | |
3,441 | 1,089 | |
- | - | |
0.0 | 2.8 | |
10 days ago | about 2 months ago | |
C++ | C++ | |
GNU General Public License v3.0 or later | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
readerwriterqueue
Posts with mentions or reviews of readerwriterqueue.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-18.
-
MPMC suggestions where messages are sent to all consumers ?
I have looked at the commonly recommended - https://github.com/cameron314/readerwriterqueue - https://github.com/rigtorp/MPMCQueue
-
How to figure out the cause of my pi 4 crashing?
The PREEMPT error looks like its a C module but I cannot tell from he little snippet of the log - you may do better to move the *arr and Synchthing into Docker containers to keep the OS cleaner.
-
Qt 6.3 Released
For audio DSP in a Qt app I have good success with using a lock-free queue (e.g. https://github.com/cameron314/readerwriterqueue) to communicate from / to the UI threads. Code more-or-less looks like
connect(model, &ModelObject::somethingChanged, [=] {
-
ConorWilliams/ConcurrentDeque
We recently removed readerwriterqueue from our project due to issues and replaced with simple locking queue (and got better performance in the result). Your code looks interesting, but we can't use it due to C++17 usage.
MPMCQueue.h
Posts with mentions or reviews of MPMCQueue.h.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-18.
-
MPMC suggestions where messages are sent to all consumers ?
I have looked at the commonly recommended - https://github.com/cameron314/readerwriterqueue - https://github.com/rigtorp/MPMCQueue
-
Correctly implementing a spinlock in Modern C++
You can align and pad each ring buffer slot to the cache line size. Example https://github.com/rigtorp/MPMCQueue/blob/master/include/rig...
What are some alternatives?
When comparing readerwriterqueue and MPMCQueue.h you can also consider the following projects:
moodycamel - A fast multi-producer, multi-consumer lock-free concurrent queue for C++11
CUB - THIS REPOSITORY HAS MOVED TO github.com/nvidia/cub, WHICH IS AUTOMATICALLY MIRRORED HERE.
Disruptor - High Performance Inter-Thread Messaging Library
BlockingCollection - C++11 thread safe, multi-producer, multi-consumer blocking queue, stack & priority queue class
abseil-cpp - Abseil Common Libraries (C++)
HPX - The C++ Standard Library for Parallelism and Concurrency
libmill - Go-style concurrency in C
Thrust - [ARCHIVED] The C++ parallel algorithms library. See https://github.com/NVIDIA/cccl
C++ Actor Framework - An Open Source Implementation of the Actor Model in C++
A C++14 library for executors - C++ library for executors
readerwriterqueue vs moodycamel
MPMCQueue.h vs moodycamel
readerwriterqueue vs CUB
MPMCQueue.h vs Disruptor
readerwriterqueue vs BlockingCollection
MPMCQueue.h vs abseil-cpp
readerwriterqueue vs HPX
MPMCQueue.h vs libmill
readerwriterqueue vs Thrust
MPMCQueue.h vs Thrust
readerwriterqueue vs C++ Actor Framework
MPMCQueue.h vs A C++14 library for executors