Versions in this module Expand all Collapse all v0 v0.1.0 Apr 17, 2025 v0.0.2 Mar 27, 2025 Changes in this version + func EstimateETA(startTime time.Time, progress, end uint64) time.Duration + func ProgressFromHash(b []byte) uint64 + type AdaptiveTimeoutConfig struct + InitialTimeout time.Duration + MaximumTimeout time.Duration + MinimumTimeout time.Duration + TimeoutCoefficient float64 + TimeoutHalflife time.Duration + type AdaptiveTimeoutManager interface + Dispatch func() + ObserveLatency func(latency time.Duration) + Put func(id ids.RequestID, measureLatency bool, timeoutHandler func()) + Remove func(id ids.RequestID) + Stop func() + TimeoutDuration func() time.Duration + func NewAdaptiveTimeoutManager(config *AdaptiveTimeoutConfig, reg prometheus.Registerer) (AdaptiveTimeoutManager, error) + type Meter interface + Tick func() + Ticks func() int + type Timer struct + func NewStagedTimer(f func() (time.Duration, bool)) *Timer + func NewTimer(handler func()) *Timer + func (t *Timer) Cancel() + func (t *Timer) Dispatch() + func (t *Timer) SetTimeoutIn(duration time.Duration) + func (t *Timer) Stop()