Function async_slot::sync::channel
[−]
[src]
pub fn channel<T>() -> (Sender<T>, Receiver<T>)
Creates an in-memory Stream which only preserves last value
This method is somewhat similar to channel(1)
but instead of preserving
first value sent (and erroring on sender side) it replaces value if
consumer is not fast enough and preserves last values sent on any
poll of a stream.
Example
extern crate futures; extern crate async_slot; use futures::prelude::*; use futures::stream::iter_ok; let (tx, rx) = async_slot::channel::<i32>(); tx.send_all(iter_ok(vec![1, 2, 3])).wait(); let received = rx.collect().wait().unwrap(); assert_eq!(received, vec![3]);