[][src]Struct grin_util::RateCounter

pub struct RateCounter { /* fields omitted */ }

A rate counter tracks the number of transfers, the amount of data exchanged and the rate of transfer (via a few timers) over the last minute. The counter does not try to be accurate and update times proactively, instead it only does so lazily. As a result, produced rates are worst-case estimates.

Methods

impl RateCounter
[src]

Instantiate a new rate counter

Increments number of bytes transferred, updating counts and rates.

Increments number of bytes without updating the count or rate. We filter out 0 last_min_times when calculating rate. Used during txhashset.zip download to track bytes downloaded without treating a peer as abusive (too high a rate of download).

Number of bytes counted in the last minute. Includes "quiet" byte increments.

Count of increases in the last minute. Excludes "quiet" byte increments.

Auto Trait Implementations

impl Send for RateCounter

impl Sync for RateCounter

Blanket Implementations

impl<T> From for T
[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T

impl<T> UnsafeAny for T where
    T: Any