10 releases
0.5.0 | Nov 4, 2022 |
---|---|
0.4.1 |
|
0.4.0 | Nov 20, 2020 |
0.3.1 | Apr 30, 2020 |
0.1.1 | May 26, 2019 |
#18 in Concurrency
1,495,702 downloads per month
Used in 1,330 crates
(83 directly)
280KB
5K
SLoC
futures-intrusive
This crate provides a variety of Futures
-based and async/await
compatible
types that are based on the idea of intrusive collections:
- Channels in a variety of flavors:
- Oneshot
- Multi-Producer Multi-Consumer (MPMC)
- State Broadcast
- Synchronization Primitives:
- Manual Reset Event
- Mutex
- Semaphore
- A timer
Please refer to the documentation for details.
In addition to the documentation the examples provide a quick overview on how the primitives can be used.
Usage
Add this to your Cargo.toml
:
[dependencies]
futures-intrusive = "^0.5"
In order to use the crate in a no-std
environment, it needs to be compiled
without default features:
[dependencies]
futures-intrusive = { version = "^0.5", default-features = false }
The crate defines a feature alloc
, which can be used in order to re-enable
alloc
features. Also defined is std
, which can be used in order to re-enable
std
features.
Minimum Rust version
The minimum required Rust version is 1.36, due to reliance on stable
Future
, Context
and Waker
types.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Dependencies
~0.1–5.5MB