Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ContinuousFactory ¶
type ContinuousFactory struct{}
ContinuousFactory implements the Factory interface by returning a continuous time meter.
type Factory ¶
type Factory interface {
// New returns a new meter with the provided halflife.
New(halflife time.Duration) Meter
}
Factory returns new meters.
type Meter ¶
type Meter interface {
// Inc the meter, the read value will be monotonically increasing while
// the meter is running.
Inc(time.Time, float64)
// Dec the meter, the read value will be exponentially decreasing while the
// meter is off.
Dec(time.Time, float64)
// Read the current value of the meter, this can be used to approximate the
// percent of time the meter has been running recently. The definition of
// recently depends on the halflife of the decay function.
Read(time.Time) float64
// Returns the duration between [now] and when the value of this meter
// reaches [value], assuming that the number of cores running is always 0.
// If the value of this meter is already <= [value], returns the zero duration.
TimeUntil(now time.Time, value float64) time.Duration
}
Meter tracks a continuous exponential moving average of the % of time this meter has been running.
Click to show internal directories.
Click to hide internal directories.