Expand description
Creates a new futures-aware, one-shot channel.
This function is similar to Rust’s channels found in the standard library.
Two halves are returned, the first of which is a Sender
handle, used to
signal the end of a computation and provide its value. The second half is a
Receiver
which implements the Future
trait, resolving to the value that
was given to the Sender
handle.
Each half can be separately owned and sent across threads/tasks.
Examples
use std::thread;
use futures::sync::oneshot;
use futures::*;
let (p, c) = oneshot::channel::<i32>();
thread::spawn(|| {
c.map(|i| {
println!("got: {}", i);
}).wait();
});
p.send(3).unwrap();