# Function futures_channel::mpsc::channel [−] [src]

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

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`.