[−][src]Crate flume
Flume
A blazingly fast multi-producer, single-consumer channel.
"Do not communicate by sharing memory; instead, share memory by communicating."
Examples
let (tx, rx) = flume::unbounded(); tx.send(42).unwrap(); assert_eq!(rx.recv().unwrap(), 42);
Re-exports
pub use select::Selector; |
Modules
| async | Futures and other types that allow asynchronous interaction with channels. |
| select | Types that permit waiting upon multiple blocking operations using the |
Structs
| Drain | An fixed-sized iterator over the msgs drained from a channel. |
| IntoIter | An owned iterator over the msgs received from a channel. |
| Iter | An iterator over the msgs received from a channel. |
| Receiver | The receiving end of a channel. |
| SendError | An error that may be emitted when attempting to send a value into a channel on a sender. |
| Sender | A transmitting end of a channel. |
| TryIter | An non-blocking iterator over the msgs received from a channel. |
Enums
| RecvError | An error that may be emitted when attempting to wait for a value on a receiver. |
| RecvTimeoutError | An error that may be emitted when attempting to wait for a value on a receiver with a timeout. |
| SendTimeoutError | An error that may be emitted when sending a value into a channel on a sender with a timeout. |
| TryRecvError | An error that may be emitted when attempting to fetch a value on a receiver. |
| TrySendError | An error that may be emitted when attempting to send a value into a channel on a sender. |
Functions
| bounded | Create a channel with a maximum capacity. |
| unbounded | Create a channel with no maximum capacity. |