Skip to content

3.5 Concurrent and Lock-Free Structures

Mutex-protected structures, lock-free stacks, queues, hash tables, skip lists, CAS primitives, hazard pointers, epoch reclamation, and RCU.

indexslugname
1concurrent-data-structureConcurrent Data Structure
2thread-safe-wrapperThread Safe Wrapper
3mutex-protected-mapMutex Protected Map
4read-write-lock-mapRead Write Lock Map
5striped-lockingStriped Locking
6concurrent-queueConcurrent Queue
7mpsc-queueMPSC Queue
8spmc-queueSPMC Queue
9mpmc-queueMPMC Queue
10bounded-concurrent-queueBounded Concurrent Queue
11unbounded-concurrent-queueUnbounded Concurrent Queue
12lock-free-stackLock Free Stack
13lock-free-queueLock Free Queue
14lock-free-listLock Free List
15lock-free-hash-tableLock Free Hash Table
16lock-free-skip-listLock Free Skip List
17wait-free-structureWait Free Structure
18obstruction-free-structureObstruction Free Structure
19compare-and-swapCompare And Swap
20load-linked-store-conditionalLoad Linked Store Conditional
21aba-problemABA Problem
22tagged-pointerTagged Pointer
23hazard-pointerHazard Pointer
24epoch-based-reclamationEpoch Based Reclamation
25read-copy-updateRead Copy Update
26memory-orderingMemory Ordering
27linearizabilityLinearizability
28progress-guaranteeProgress Guarantee
29concurrent-skip-listConcurrent Skip List
30concurrent-bagConcurrent Bag
31work-stealing-dequeWork Stealing Deque
32flat-combiningFlat Combining
33elimination-backoff-stackElimination Backoff Stack
34concurrent-invariant-checkConcurrent Invariant Check
35concurrent-benchmarkingConcurrent Benchmarking