Expand description

Miscellaneous tools for concurrent programming.

Atomics

  • AtomicCell, a thread-safe mutable memory location.
  • AtomicConsume, for reading from primitive atomic types with “consume” ordering.

Thread synchronization

  • Parker, a thread parking primitive.
  • ShardedLock, a sharded reader-writer lock with fast concurrent reads.
  • WaitGroup, for synchronizing the beginning or end of some computation.

Utilities

  • Backoff, for exponential backoff in spin loops.
  • CachePadded, for padding and aligning a value to the length of a cache line.
  • scope, for spawning threads that borrow local variables from the stack.

Modules

Atomic types.

Thread synchronization primitives.

Threads that can borrow variables from the stack.

Structs

Performs exponential backoff in spin loops.

Pads and aligns a value to the length of a cache line.