alle opties
bullseye  ] [  bookworm  ] [  trixie  ] [  forky  ] [  sid  ]
[ Bron: libatomic-queue  ]

Pakket: libatomic-queue-dev (1.7.1-1)

Verwijzigingen voor libatomic-queue-dev

Screenshot

Debian bronnen:

Het bronpakket libatomic-queue downloaden:

Beheerders:

Externe bronnen:

Vergelijkbare pakketten:

devel files for C++ atomic_queue library

C++11 multiple-producer-multiple-consumer lockless queues based on circular buffer with std::atomic. The main design principle these queues follow is simplicity: the bare minimum of atomic operations, fixed size buffer, value semantics.

The circular buffer side-steps the memory reclamation problem inherent in linked-list based queues for the price of fixed buffer size. See Effective memory reclamation for lock-free data structures in C++ for more details.

These qualities are also limitations:

 * The maximum queue size must be set at compile time or construction time.
 * There are no OS-blocking push/pop functions.

Nevertheless, ultra-low-latency applications need just that and nothing more. The simplicity pays off, see the throughput and latency benchmarks.

Available containers are:

 * AtomicQueue - a fixed size ring-buffer for atomic elements.
 * OptimistAtomicQueue - a faster fixed size ring-buffer for atomic
   elements which busy-waits when empty or full.
 * AtomicQueue2 - a fixed size ring-buffer for non-atomic elements.
 * OptimistAtomicQueue2 - a faster fixed size ring-buffer for non-atomic
   elements which busy-waits when empty or full.

These containers have corresponding AtomicQueueB, OptimistAtomicQueueB, AtomicQueueB2, OptimistAtomicQueueB2 versions where the buffer size is specified as an argument to the constructor.

Tags: Softwareontwikkeling: Bibliotheken, Role: Development Library

libatomic-queue-dev downloaden

Pakket downloaden voor alle beschikbare platforms
Platform Pakketgrootte Geïnstalleerde grootte Bestanden
amd64 11,3 kB59,0 kB [overzicht]