10 releases (5 breaking)
new 0.6.3 | Mar 6, 2025 |
---|---|
0.6.2 | Mar 6, 2025 |
0.5.1 | Mar 1, 2025 |
0.5.0 | Feb 24, 2025 |
0.1.0 | Dec 6, 2024 |
#573 in Concurrency
131 downloads per month
67KB
1.5K
SLoC
This crate implements three lock-free structures for object transfers:
- fully-featured MPMC channels
- small one-shot SPSC channels
- an
AtomicSlot<T>
type
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.
See the complete documentation: https://docs.rs/async-fifo/
lib.rs
:
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.)