pub struct GracefulShutdown { /* private fields */ }Expand description
Graceful shutdown coordinator.
Implementations§
Source§impl GracefulShutdown
impl GracefulShutdown
pub fn new( registry: Arc<NodeRegistry>, leader_election: Option<Arc<LeaderElection>>, config: ShutdownConfig, ) -> Self
pub fn is_shutdown_requested(&self) -> bool
pub fn in_flight_count(&self) -> u32
pub fn increment_in_flight(&self)
pub fn decrement_in_flight(&self)
Sourcepub fn subscribe(&self) -> Receiver<bool>
pub fn subscribe(&self) -> Receiver<bool>
Subscribe to shutdown notifications.
Late subscribers immediately see true if shutdown was already requested.
pub fn should_accept_work(&self) -> bool
pub async fn shutdown(&self) -> Result<()>
Auto Trait Implementations§
impl Freeze for GracefulShutdown
impl !RefUnwindSafe for GracefulShutdown
impl Send for GracefulShutdown
impl Sync for GracefulShutdown
impl Unpin for GracefulShutdown
impl UnsafeUnpin for GracefulShutdown
impl !UnwindSafe for GracefulShutdown
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> 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