pub struct WakeReasonCounters {
pub notify: AtomicU64,
pub timeout: AtomicU64,
pub flusher_takeover: AtomicU64,
pub failed_epoch: AtomicU64,
pub busy_retry: AtomicU64,
}Expand description
Tracks why a waiter woke up during epoch wait.
Fields§
§notify: AtomicU64Woken by condvar notify (normal completion).
timeout: AtomicU64Woken by condvar timeout.
flusher_takeover: AtomicU64Waiter took over as flusher (flusher died or slow).
failed_epoch: AtomicU64Woken to observe a failed epoch.
busy_retry: AtomicU64Woken but must busy-retry (spurious or race).
Implementations§
Source§impl WakeReasonCounters
impl WakeReasonCounters
Sourcepub fn snapshot(&self) -> WakeReasonSnapshot
pub fn snapshot(&self) -> WakeReasonSnapshot
Snapshot all counters.
Auto Trait Implementations§
impl !Freeze for WakeReasonCounters
impl RefUnwindSafe for WakeReasonCounters
impl Send for WakeReasonCounters
impl Sync for WakeReasonCounters
impl Unpin for WakeReasonCounters
impl UnsafeUnpin for WakeReasonCounters
impl UnwindSafe for WakeReasonCounters
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: NoopSpan) -> Self
fn instrument(self, _span: NoopSpan) -> Self
Instruments this future with a span (no-op when disabled).
Source§fn in_current_span(self) -> Self
fn in_current_span(self) -> Self
Instruments this future with the current span (no-op when disabled).
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