Skip to content
Sections
>> Trisquel >> パッケージ >> aramo >> libs >> libatomic-queue0
aramo  ]
[ ソース: libatomic-queue  ]

パッケージ: libatomic-queue0 (0.0+git20211209.7db4cea-1)

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.

This package contains the dynamic library.

その他の libatomic-queue0 関連パッケージ

  • 依存
  • 推奨
  • 提案
  • dep: libc6 (>= 2.34)
    GNU C Library: Shared libraries
    以下のパッケージによって提供される仮想パッケージでもあります: libc6-udeb
  • dep: libgcc-s1 (>= 3.0)
    GCC support library
  • dep: libstdc++6 (>= 11)
    GNU Standard C++ Library v3

libatomic-queue0 のダウンロード

すべての利用可能アーキテクチャ向けのダウンロード
アーキテクチャ パッケージサイズ インストールサイズ ファイル
amd64 59.8 kB215 kB [ファイル一覧]