[−][src]Module kayrx::krse::sync
Future-aware synchronization
This module is enabled with the sync
feature flag.
Tasks sometimes need to communicate with each other. This module contains basic abstractions for doing so:
Modules
broadcast | A multi-producer, multi-consumer broadcast queue. Each sent value is seen by all consumers. |
mpsc | A multi-producer, single-consumer queue for sending values across asynchronous tasks. |
oneshot | A channel for sending a single message between asynchronous tasks. |
watch | A single-producer, multi-consumer channel that only retains the last sent value. |
Structs
Barrier | A barrier enables multiple threads to synchronize the beginning of some computation. |
BarrierWaitResult | A |
Mutex | An asynchronous mutual exclusion primitive useful for protecting shared data |
MutexGuard | A handle to a held |
Semaphore | Counting semaphore performing asynchronous permit aquisition. |
SemaphorePermit | A permit from the semaphore |