[−][src]Function futures_util::future::join_all
ⓘImportant traits for JoinAll<F>
pub fn join_all<I>(i: I) -> JoinAll<I::Item> where
I: IntoIterator,
I::Item: Future,
Creates a future which represents a collection of the outputs of the futures given.
The returned future will drive execution for all of its underlying futures,
collecting the results into a destination Vec<T>
in the same order as they
were provided.
See Also
This is purposefully a very simple API for basic use-cases. In a lot of
cases you will want to use the more powerful
FuturesUnordered
APIs, some
examples of additional functionality that provides:
-
Adding new futures to the set even after it has been started.
-
Only polling the specific futures that have been woken. In cases where you have a lot of futures this will result in much more efficient polling.
Examples
#![feature(async_await, await_macro)] use futures::future::{join_all}; async fn foo(i: u32) -> u32 { i } let futures = vec![foo(1), foo(2), foo(3)]; assert_eq!(await!(join_all(futures)), [1, 2, 3]);