Recommendations for C++ library for shared memory (multiple producers/single consumer)

This page summarizes the projects mentioned and recommended in the original post on /r/cpp

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • shm_ring_buffer

    Shared-memory based ring buffer

    I've been using https://github.com/bo-yang/shm_ring_buffer. It's an MPMC ring buffer, so it would works correctly for your MPSC scenario, but probably not as fast as possible. And it is POSIX-only. You didn't specify for which platform you are developing.

  • moodycamel

    A fast multi-producer, multi-consumer lock-free concurrent queue for C++11

    I would recommend https://github.com/cameron314/concurrentqueue as it's very battle tested and fast.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • Aeron

    Efficient reliable UDP unicast, UDP multicast, and IPC message transport

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts