Crate synchronoise [] [src]

A collection of synchronization primitives that build on the primitives available in the standard library.

This library contains the following special-purpose synchronization primitives:

  • CountdownEvent, a primitive that keeps a counter and allows a thread to wait until the counter reaches zero.
  • SignalEvent, a primitive that allows one or more threads to wait on a signal from another thread.
  • WriterReaderPhaser, a primitive that allows multiple wait-free "writer critical sections" against a "reader phase flip" that waits for currently-active writers to finish.

Structs

CountdownEvent

A synchronization primitive that signals when its count reaches zero.

CountdownGuard

An opaque guard struct that decrements the count of a borrowed CountdownEvent on drop.

PhaserCriticalSection

Guard struct that represents a "writer critical section" for a WriterReaderPhaser.

PhaserReadLock

Guard struct for a WriterReaderPhaser that allows a reader to perform a "phase flip".

SignalEvent

A synchronization primitive that allows one or more threads to wait on a signal from another thread.

WriterReaderPhaser

A synchronization primitive that allows for multiple concurrent wait-free "writer critical sections" and a "reader phase flip" that can wait for all currerntly-active writers to finish.

Enums

CountdownError

The collection of errors that can be returned by CountdownEvent methods.

SignalKind

Determines the reset behavior of a SignalEvent.