pub struct ExponentialHistogram { /* private fields */ }Expand description
A histogram with exponential buckets.
This histogram maintains 92 buckets, one for each value or range below, listing ranges by their lower endpoints:
- 0
- 1, 2, 3, … 9
- 10, 20, 30, … 90
- 100, 200, 300, … 900
- 1000, 2000, 3000, … 9000
- 10_000, 20_000, 30_000, … 90_000
- 100_000, 200_000, 300_000, … 900_000
- 1_000_000, 2_000_000, 3_000_000, … 9_000_000
- 10_000_000, 20_000_000, 30_000_000, … 90_000_000
- 100_000_000, 200_000_000, 300_000_000, … 900_000_000
- 1_000_000_000, 2_000_000_000, 3_000_000_000, … 9_000_000_000
- 10_000_000_000 through u64::MAX.
Implementations§
Source§impl ExponentialHistogram
impl ExponentialHistogram
Sourcepub fn record_elapsed(&self, start: Instant)
pub fn record_elapsed(&self, start: Instant)
Records the time elapsed since start in the histogram, as a count of
microseconds.
Sourcepub fn record_duration(&self, duration: Duration)
pub fn record_duration(&self, duration: Duration)
Records duration as a count of microseconds.
Sourcepub fn snapshot(&self) -> ExponentialHistogramSnapshot
pub fn snapshot(&self) -> ExponentialHistogramSnapshot
Returns a snapshot of the histogram.
Sourcepub fn record_callback<F, T>(&self, f: F) -> Twhere
F: FnOnce() -> T,
pub fn record_callback<F, T>(&self, f: F) -> Twhere
F: FnOnce() -> T,
Calls f and records the amount of time that it takes to run, in
microseconds, in the histogram.
Trait Implementations§
Source§impl Debug for ExponentialHistogram
impl Debug for ExponentialHistogram
Auto Trait Implementations§
impl !Freeze for ExponentialHistogram
impl RefUnwindSafe for ExponentialHistogram
impl Send for ExponentialHistogram
impl Sync for ExponentialHistogram
impl Unpin for ExponentialHistogram
impl UnsafeUnpin for ExponentialHistogram
impl UnwindSafe for ExponentialHistogram
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.