JCTools is a Java concurrency library providing a collection of lock-less and wait-free data structures. It serves as a toolkit for managing thread-safe data exchange, specifically designed to optimize high-throughput messaging and producer-consumer patterns in multi-threaded applications. The library distinguishes itself by implementing specialized queue structures that minimize contention and maximize throughput. By utilizing techniques such as cache-line padding, memory-barrier-based synchronization, and relaxed-consistency memory ordering, it avoids the performance bottlenecks often assoc
This project is a single-producer single-consumer concurrent queue for C++ designed for lock-free data exchange between threads. It provides a thread-safe mechanism to transfer data without the use of mutexes or locks. The queue is implemented as a contiguous circular buffer that supports dynamic capacity growth to prevent data loss when the queue reaches its limit. It utilizes atomic synchronization and wait-free index management to coordinate data access between the writing and reading threads. The library covers inter-thread communication and buffer management, offering both blocking and
go-datastructures is a collection of thread-safe and lock-free data structures designed for high-performance concurrent applications in Go. It provides a modular library of specialized algorithmic toolsets, including a lock-free collection library and an immutable data structure library. The project distinguishes itself through a suite of persistent AVL trees and hash array mapped tries that use branch-copying to preserve previous versions. It also implements non-blocking hash maps, queues, and tries that enable linearizable snapshots and concurrent updates without the use of mutual exclusion
A bounded multi-producer multi-consumer concurrent queue written in C++11
ConcurrentQueue is a header-only C++ template library that provides a lock-free data structure for multi-producer multi-consumer thread communication. It functions as a synchronization primitive designed to coordinate data flow between concurrent execution units using atomic operations rather than traditional mutex locking.
Principalele funcționalități ale cameron314/concurrentqueue sunt: Concurrent Queues, Lock-Free Concurrent Queues, Thread-Safe Communication Channels, Synchronization Primitives, Atomic State Synchronization, Producer-Consumer Workflow Managers, Partitioned, Lock-Free Thread Communication.
Alternativele open-source pentru cameron314/concurrentqueue includ: jctools/jctools — JCTools is a Java concurrency library providing a collection of lock-less and wait-free data structures. It serves as… cameron314/readerwriterqueue — This project is a single-producer single-consumer concurrent queue for C++ designed for lock-free data exchange… workiva/go-datastructures — go-datastructures is a collection of thread-safe and lock-free data structures designed for high-performance… rigtorp/mpmcqueue — A bounded multi-producer multi-consumer concurrent queue written in C++11. facebook/folly — Folly is a collection of high-performance C++ components designed as an extension to the C++ Standard Library for… lmax-exchange/disruptor — The Disruptor is a lock-free inter-thread messaging library and high-performance event bus. It implements a concurrent…