Documentation
¶
Index ¶
- func Add64(a, b uint64) (uint64, error)
- func Diff64(a, b uint64) uint64
- func Max64(max uint64, nums ...uint64) uint64
- func Min(min int, nums ...int) int
- func Min64(min uint64, nums ...uint64) uint64
- func Mul64(a, b uint64) (uint64, error)
- func Sub64(a, b uint64) (uint64, error)
- type Averager
- type AveragerHeap
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Averager ¶ added in v1.0.4
type Averager interface {
// Observe the value at the given time
Observe(value float64, currentTime time.Time)
// Read returns the average of the provided values.
Read() float64
}
Averager tracks a continuous time exponential moving average of the provided values.
func NewAverager ¶ added in v1.0.4
func NewSyncAverager ¶ added in v1.2.4
type AveragerHeap ¶ added in v1.7.13
type AveragerHeap interface {
// Add will do nothing if [nodeID] is already in the heap
Add(nodeID ids.NodeID, averager Averager)
// Remove attempts to remove the average that was added with the provided
// [nodeID], if none is contained in the heap, [false] will be returned
Remove(nodeID ids.NodeID) (Averager, bool)
// Pop attempts to remove the node with either the largest or smallest
// average, depending on if this is a max heap or a min heap, respectively.
Pop() (ids.NodeID, Averager, bool)
// Pop attempts to return the node with either the largest or smallest
// average, depending on if this is a max heap or a min heap, respectively.
Peek() (ids.NodeID, Averager, bool)
// Len returns the number of nodes that are currently in the heap.
Len() int
}
AveragerHeap maintains a heap of the averagers.
func NewMaxAveragerHeap ¶ added in v1.7.13
func NewMaxAveragerHeap() AveragerHeap
NewMaxAveragerHeap returns a new empty max heap
func NewMinAveragerHeap ¶ added in v1.7.13
func NewMinAveragerHeap() AveragerHeap
NewMinAveragerHeap returns a new empty min heap
Source Files
¶
Click to show internal directories.
Click to hide internal directories.