pub struct GroupJoinHandle<E> { /* private fields */ }
Expand description
A JoinHandle is used to manage a collection of tasks. There are two things you can do with it:
- JoinHandle impls Future, so you can poll or await on it. It will be
Ready when all tasks return Ok(()) and the associated
TaskGroup
is dropped (so no more tasks can be created), or when any task panicks or returns an Err(E). - When a JoinHandle is dropped, all tasks it contains are canceled
(terminated). So, if you use a combinator like
tokio::time::timeout(duration, task_manager).await
, all tasks will be terminated if the timeout occurs.
Trait Implementations§
Source§impl<E: Debug> Debug for GroupJoinHandle<E>
impl<E: Debug> Debug for GroupJoinHandle<E>
Source§impl<E> Future for GroupJoinHandle<E>
impl<E> Future for GroupJoinHandle<E>
Auto Trait Implementations§
impl<E> Freeze for GroupJoinHandle<E>
impl<E> RefUnwindSafe for GroupJoinHandle<E>
impl<E> Send for GroupJoinHandle<E>where
E: Send,
impl<E> Sync for GroupJoinHandle<E>where
E: Send,
impl<E> Unpin for GroupJoinHandle<E>
impl<E> UnwindSafe for GroupJoinHandle<E>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<F> FutureExt for F
impl<F> FutureExt for F
Source§fn catch_unwind(self) -> CatchUnwind<Self>where
Self: Sized + UnwindSafe,
fn catch_unwind(self) -> CatchUnwind<Self>where
Self: Sized + UnwindSafe,
Catches panics while polling the future. Read more
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn delay(self, dur: Duration) -> DelayFuture<Self>where
Self: Sized,
fn delay(self, dur: Duration) -> DelayFuture<Self>where
Self: Sized,
Returns a Future that delays execution for a specified time. Read more
Source§fn flatten(self) -> FlattenFuture<Self, <Self::Output as IntoFuture>::Future>
fn flatten(self) -> FlattenFuture<Self, <Self::Output as IntoFuture>::Future>
Flatten out the execution of this future when the result itself
can be converted into another future. Read more
Source§fn race<F>(self, other: F) -> Race<Self, F>
fn race<F>(self, other: F) -> Race<Self, F>
Waits for one of two similarly-typed futures to complete. Read more
Source§fn try_race<F, T, E>(self, other: F) -> TryRace<Self, F>
fn try_race<F, T, E>(self, other: F) -> TryRace<Self, F>
Waits for one of two similarly-typed fallible futures to complete. Read more
Source§fn join<F>(self, other: F) -> Join<Self, F>
fn join<F>(self, other: F) -> Join<Self, F>
Waits for two similarly-typed futures to complete. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<F> IntoFuture for Fwhere
F: Future,
impl<F> IntoFuture for Fwhere
F: Future,
Source§type IntoFuture = F
type IntoFuture = F
Which kind of future are we turning this into?
Source§fn into_future(self) -> <F as IntoFuture>::IntoFuture
fn into_future(self) -> <F as IntoFuture>::IntoFuture
Creates a future from a value. Read more