[][src]Function futures_lite::future::race

pub fn race<T, A, B>(future1: A, future2: B) -> Race<A, B>

Important traits for Race<A, B>

impl<T, A, B> Future for Race<A, B> where
    A: Future<Output = T>,
    B: Future<Output = T>, 
type Output = T;
where
    A: Future<Output = T>,
    B: Future<Output = T>, 

Returns the result of the future that completes first.

Each time Race is polled, the two inner futures are polled in random order. Therefore, no future takes precedence over the other if both can complete at the same time.

Examples

use futures_lite::*;

let a = future::pending();
let b = future::ready(7);

assert_eq!(future::race(a, b).await, 7);