pub struct TaskSupervisor { /* private fields */ }Implementations§
Source§impl TaskSupervisor
impl TaskSupervisor
pub fn new() -> Self
pub fn with_diagnostics(diagnostics: Arc<RuntimeDiagnosticSink>) -> Self
pub fn group(&self, name: impl Into<String>) -> TaskGroup
pub fn spawn_named<F>( &self, name: impl Into<String>, fut: F, ) -> OwnedTaskHandle<u64>
pub fn spawn_cancellable_named<F>( &self, name: impl Into<String>, fut: F, ) -> OwnedTaskHandle<u64>
pub fn spawn_local_named<F>( &self, name: impl Into<String>, fut: F, ) -> OwnedTaskHandle<u64>
pub fn spawn_local_cancellable_named<F>( &self, name: impl Into<String>, fut: F, ) -> OwnedTaskHandle<u64>
pub fn spawn_interval_until_named<F, Fut>( &self, name: impl Into<String>, time_effects: Arc<dyn PhysicalTimeEffects + Send + Sync>, interval: Duration, f: F, ) -> OwnedTaskHandle<u64>
pub fn spawn_local_interval_until_named<F, Fut>( &self, name: impl Into<String>, time_effects: Arc<dyn PhysicalTimeEffects + Send + Sync>, interval: Duration, f: F, ) -> OwnedTaskHandle<u64>
pub fn spawn_child<F>( &self, name: impl Into<String>, fut: F, ) -> OwnedTaskHandle<u64>
pub fn spawn_periodic<F, Fut>( &self, name: impl Into<String>, time_effects: Arc<dyn PhysicalTimeEffects + Send + Sync>, interval: Duration, f: F, ) -> OwnedTaskHandle<u64>
pub fn request_cancellation(&self)
pub async fn wait_for_idle( &self, timeout: Duration, ) -> Result<(), TaskSupervisionError>
pub fn force_abort_remaining(&self) -> Result<(), TaskSupervisionError>
pub fn abort_remaining(&self) -> Result<(), TaskSupervisionError>
pub async fn shutdown_with_timeout( &self, timeout: Duration, ) -> Result<(), TaskSupervisionError>
pub async fn shutdown_gracefully( &self, timeout: Duration, ) -> Result<(), TaskSupervisionError>
pub fn shutdown(&self)
pub fn cancellation_token(&self) -> Arc<dyn CancellationToken>
pub fn active_tasks(&self) -> Vec<String>
Trait Implementations§
Source§impl Clone for TaskSupervisor
impl Clone for TaskSupervisor
Source§fn clone(&self) -> TaskSupervisor
fn clone(&self) -> TaskSupervisor
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Default for TaskSupervisor
impl Default for TaskSupervisor
Source§impl Drop for TaskSupervisor
impl Drop for TaskSupervisor
Source§impl TaskSpawner for TaskSupervisor
impl TaskSpawner for TaskSupervisor
Source§fn spawn_cancellable(
&self,
fut: BoxFuture<'static, ()>,
token: Arc<dyn CancellationToken>,
)
fn spawn_cancellable( &self, fut: BoxFuture<'static, ()>, token: Arc<dyn CancellationToken>, )
Spawn a background task tied to a cancellation token.
Source§fn spawn_local(&self, fut: LocalBoxFuture<'static, ()>)
fn spawn_local(&self, fut: LocalBoxFuture<'static, ()>)
Spawn a background task that may remain thread-local.
Source§fn spawn_local_cancellable(
&self,
fut: LocalBoxFuture<'static, ()>,
token: Arc<dyn CancellationToken>,
)
fn spawn_local_cancellable( &self, fut: LocalBoxFuture<'static, ()>, token: Arc<dyn CancellationToken>, )
Spawn a thread-local background task tied to a cancellation token.
Source§fn cancellation_token(&self) -> Arc<dyn CancellationToken>
fn cancellation_token(&self) -> Arc<dyn CancellationToken>
Return a cancellation token associated with this spawner.
Auto Trait Implementations§
impl Freeze for TaskSupervisor
impl !RefUnwindSafe for TaskSupervisor
impl Send for TaskSupervisor
impl Sync for TaskSupervisor
impl Unpin for TaskSupervisor
impl UnsafeUnpin for TaskSupervisor
impl !UnwindSafe for TaskSupervisor
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> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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<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 moreSource§impl<T> IntoViewDelta for T
impl<T> IntoViewDelta for T
Source§impl<Src, Dst> LosslessTryInto<Dst> for Srcwhere
Dst: LosslessTryFrom<Src>,
impl<Src, Dst> LosslessTryInto<Dst> for Srcwhere
Dst: LosslessTryFrom<Src>,
Source§fn lossless_try_into(self) -> Option<Dst>
fn lossless_try_into(self) -> Option<Dst>
Performs the conversion.
Source§impl<Src, Dst> LossyInto<Dst> for Srcwhere
Dst: LossyFrom<Src>,
impl<Src, Dst> LossyInto<Dst> for Srcwhere
Dst: LossyFrom<Src>,
Source§fn lossy_into(self) -> Dst
fn lossy_into(self) -> Dst
Performs the conversion.
Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> StrictAs for T
impl<T> StrictAs for T
Source§fn strict_as<Dst>(self) -> Dstwhere
T: StrictCast<Dst>,
fn strict_as<Dst>(self) -> Dstwhere
T: StrictCast<Dst>,
Casts the value.
Source§impl<Src, Dst> StrictCastFrom<Src> for Dstwhere
Src: StrictCast<Dst>,
impl<Src, Dst> StrictCastFrom<Src> for Dstwhere
Src: StrictCast<Dst>,
Source§fn strict_cast_from(src: Src) -> Dst
fn strict_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
Source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
Source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<S, T> Upcast<T> for S
impl<S, T> Upcast<T> for S
Source§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
Source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
Source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
Source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.