Flume

A blazingly fast multi-producer, multi-consumer channel.

Cargo Documentation License actions-badge

```rust let (tx, rx) = flume::unbounded();

thread::spawn(move || (0..10).for_each(|i| { tx.send(i); }));

let received = rx .iter() .sum();

assert_eq!((0..10).sum(), received); ```

Why Flume?

Usage

To use Flume, place the following line under the [dependencies] section in your Cargo.toml:

flume = "x.y"

Benchmarks

Although Flume has its own extensive benchmarks, don't take it from here that Flume is quick. The following graph is from the crossbeam-channel benchmark suite.

Flume benchmarks (crossbeam benchmark suite)

License

Flume is licensed under either of: