futures_channel::mpsc

Function channel

Source
pub fn channel<T>(buffer: usize) -> (Sender<T>, Receiver<T>)
Expand description

Creates a bounded mpsc channel for communicating between asynchronous tasks.

Being bounded, this channel provides backpressure to ensure that the sender outpaces the receiver by only a limited amount. The channel’s capacity is equal to buffer + num-senders. In other words, each sender gets a guaranteed slot in the channel capacity, and on top of that there are buffer “first come, first serve” slots available to all senders.

The Receiver returned implements the [Stream] trait, while Sender implements Sink.