Expand description
Will’s Programming Toolbox
Concurrency Tools
sync::ds::BasicSharedMap
, a concurrent map that can be cloned and shared between threadsexecutors::RayonThreadPool
, a thread pool which can wait for all tasks to complete before shutting down
Concurrency Primitives
sync::Mutex
, a primitive for mutual exclusionsync::SpinLock
, a primitive for mutual exclusion that spins in a loopsync::RwLock
, a primitive for mutual exclusion that allows multiple readers or one writer at a timesync::Semaphore
, a primitive to limit accesssync::Condvar
, a primitive to signal and wait on a conditionsync::oneshot::Channel
, a single-producer single-consumer channel that sends a single valuesync::mpmc::Channel
, an unbounded multi-producer multi-consumer channel for message passing
Modules
- Implementations of executors for running tasks concurrently.
- Implementations of sorting algorithms
- Synchronization tools for concurrent programming