pub struct TaskExit(/* private fields */);Available on crate features
runtime and component-model and component-model-async only.Expand description
Represents the completion of a task created using
[Typed]Func::call_concurrent.
In general, a guest task may continue running after returning a value.
Moreover, any given guest task may create its own subtasks before or after
returning and may exit before some or all of those subtasks have finished
running. In that case, the still-running subtasks will be “reparented” to
the nearest surviving caller, which may be the original host call. The
future returned by TaskExit::block will resolve once all transitive
subtasks created directly or indirectly by the original call to
Instance::call_concurrent have exited.
Implementations§
Auto Trait Implementations§
impl Freeze for TaskExit
impl !RefUnwindSafe for TaskExit
impl Send for TaskExit
impl Sync for TaskExit
impl Unpin for TaskExit
impl !UnwindSafe for TaskExit
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more