pub struct ShutdownSignal { /* private fields */ }Expand description
An application-owned process-shutdown signal.
Implementations§
Source§impl ShutdownSignal
impl ShutdownSignal
Sourcepub fn request_shutdown(&self) -> ShutdownRequest
pub fn request_shutdown(&self) -> ShutdownRequest
Stops intake on the first request and escalates waiting on the second.
Sourcepub fn is_shutdown_requested(&self) -> bool
pub fn is_shutdown_requested(&self) -> bool
Returns whether shutdown has stopped new intake.
Sourcepub fn is_escalated(&self) -> bool
pub fn is_escalated(&self) -> bool
Returns whether a second request escalated join waiting.
Sourcepub fn ensure_accepting(&self) -> Result<(), ShutdownError>
pub fn ensure_accepting(&self) -> Result<(), ShutdownError>
Rejects new work after the first shutdown request.
§Errors
Returns ShutdownError::ShuttingDown once intake has stopped.
Trait Implementations§
Source§impl Clone for ShutdownSignal
impl Clone for ShutdownSignal
Source§fn clone(&self) -> ShutdownSignal
fn clone(&self) -> ShutdownSignal
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ShutdownSignal
impl RefUnwindSafe for ShutdownSignal
impl Send for ShutdownSignal
impl Sync for ShutdownSignal
impl Unpin for ShutdownSignal
impl UnsafeUnpin for ShutdownSignal
impl UnwindSafe for ShutdownSignal
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> 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 more