Expand description
This crate implements multiple lock-free structures for object transfers:
- fully-featured MPMC channels (see
channel::new()) - small one-shot SPSC channels (see
channel::oneshot()) - an atomic equivalent to
Box<T>(seeslot::Slot)
All of these structures are synchronized without any locks and without spinning/yielding.
This crate is compatible with no_std targets, except for the *_blocking methods.
(All items of the channel module are re-exported here at the root.)
Re-exports§
pub use channel::*;
Modules§
- channel
- Channels based on
crate::fifo - fifo
- First-in, first-out shared buffer
- slot
- Atomic and asynchronous slots