The join_all() function:
- Collects results from several futures and returns a new future with the futures::future::JoinAll<F: Future> trait
- The new future will perform commands for all of the aggregated futures within the futures::future::join_all call, returning a vector of Vec<T: Future::Item> in FIFO ordering
- An error will return itself immediately and cancel the other related futures
And the shared() function:
- futures::FutureExt::shared will create a handle that can be cloned, which resolves to the returning value of <T as futures::future::SharedItem> which can be deferred into T.
- Useful for polling a future on more than one thread
- This method is enabled only when Rust's std option is enabled (which it is by default)
- The underlying result is futures::future::Shared<Future::Item>, which implements Send and Sync traits
- Using futures::future::Shared::peek(&self) will return a value without blocking if any single shared handle has been...