Alle Optionen
bullseye  ] [  bookworm  ] [  trixie  ] [  sid  ]
[ Quellcode: readerwriterqueue  ]

Paket: libreaderwriterqueue-dev (1.0.3-1)

Links für libreaderwriterqueue-dev

Screenshot

Debian-Ressourcen:

Quellcode-Paket readerwriterqueue herunterladen:

Betreuer:

Externe Ressourcen:

Ähnliche Pakete:

single-producer, single-consumer lock-free queue for C++

This package provides a lock-free queue for C++. It only supports a two-thread use case (one consuming, and one producing). The threads can't switch roles, though you could use this queue completely from a single thread if you wish (but that would sort of defeat the purpose!).

Features:

 * Blazing fast
 * Compatible with C++11 (supports moving objects instead of making
 copies)
 * Fully generic (templated container of any type) -- just like
   std::queue, you never need to allocate memory for elements yourself
   (which saves you the hassle of writing a lock-free memory manager
   to hold the elements you're queueing)
 * Allocates memory up front, in contiguous blocks
 * Provides a try_enqueue method which is guaranteed never to allocate
   memory (the queue starts with an initial capacity)
 * Also provides an enqueue method which can dynamically grow the size
   of the queue as needed
 * Also provides try_emplace/emplace convenience methods
 * Has a blocking version with wait_dequeue
 * Completely "wait-free" (no compare-and-swap loop). Enqueue and
   dequeue are always O(1) (not counting memory allocation)
 * On x86, the memory barriers compile down to no-ops, meaning enqueue
   and dequeue are just a simple series of loads and stores (and
   branches)

Markierungen: Software-Entwicklung: Bibliotheken, Rolle: Entwicklungs-Bibliothek

libreaderwriterqueue-dev herunterladen

Download für alle verfügbaren Architekturen
Architektur Paketgröße Größe (installiert) Dateien
all 15,3 kB117,0 kB [Liste der Dateien]