drop mutex book keeping on MovingAverage impls
Commit d2d7398c allows to drop mutex book keeping.
Vladimir Bauer
1 year, 10 months ago
| 43 | 43 |
} else {
|
| 44 | 44 |
average = ewma.NewMovingAverage(age)
|
| 45 | 45 |
}
|
| 46 | |
return MovingAverageETA(style, NewThreadSafeMovingAverage(average), normalizer, wcc...)
|
|
46 |
return MovingAverageETA(style, average, normalizer, wcc...)
|
| 47 | 47 |
}
|
| 48 | 48 |
|
| 49 | 49 |
// MovingAverageETA decorator relies on MovingAverage implementation to calculate its average.
|
|
| 85 | 85 |
return d.Format(d.producer(remaining))
|
| 86 | 86 |
}
|
| 87 | 87 |
|
| 88 | |
// EwmaUpdate is called concurrently with (d *movingAverageETA).Decor
|
| 89 | 88 |
func (d *movingAverageETA) EwmaUpdate(n int64, dur time.Duration) {
|
| 90 | 89 |
if n <= 0 {
|
| 91 | 90 |
d.zDur += dur
|
| 69 | 69 |
|
| 70 | 70 |
// NewMedian is fixed last 3 samples median MovingAverage.
|
| 71 | 71 |
func NewMedian() ewma.MovingAverage {
|
| 72 | |
return NewThreadSafeMovingAverage(new(medianWindow))
|
|
72 |
return new(medianWindow)
|
| 73 | 73 |
}
|
| 45 | 45 |
} else {
|
| 46 | 46 |
average = ewma.NewMovingAverage(age)
|
| 47 | 47 |
}
|
| 48 | |
return MovingAverageSpeed(unit, format, NewThreadSafeMovingAverage(average), wcc...)
|
|
48 |
return MovingAverageSpeed(unit, format, average, wcc...)
|
| 49 | 49 |
}
|
| 50 | 50 |
|
| 51 | 51 |
// MovingAverageSpeed decorator relies on MovingAverage implementation
|
|
| 92 | 92 |
return d.Format(str)
|
| 93 | 93 |
}
|
| 94 | 94 |
|
| 95 | |
// EwmaUpdate is called concurrently with (d *movingAverageSpeed).Decor
|
| 96 | 95 |
func (d *movingAverageSpeed) EwmaUpdate(n int64, dur time.Duration) {
|
| 97 | 96 |
if n <= 0 {
|
| 98 | 97 |
d.zDur += dur
|