Function safina::select_abcd
source · [−]pub async fn select_abcd<A, B, C, D, FutA, FutB, FutC, FutD>(
a: FutA,
b: FutB,
c: FutC,
d: FutD
) -> OptionAbcd<A, B, C, D> where
FutA: 'static + Future<Output = A> + Send,
FutB: 'static + Future<Output = B> + Send,
FutC: 'static + Future<Output = C> + Send,
FutD: 'static + Future<Output = D> + Send,
Expand description
Awaits the futures and returns the value from the one that completes first.
First moves them to the heap, to make them
Unpin
.
Use
SelectFuture::new
to avoid allocating on the heap.