metrics: use atomic.Pointer in runtimeHistogram (#32361)
Some checks are pending
/ Linux Build (push) Waiting to run
/ Linux Build (arm) (push) Waiting to run
/ Windows Build (push) Waiting to run
/ Docker Image (push) Waiting to run

Co-authored-by: Felix Lange <fjl@twurst.com>
This commit is contained in:
cui 2025-08-08 02:03:30 +08:00 committed by GitHub
parent f86870f5da
commit 888b71b3cf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -14,7 +14,7 @@ func getOrRegisterRuntimeHistogram(name string, scale float64, r Registry) *runt
// runtimeHistogram wraps a runtime/metrics histogram.
type runtimeHistogram struct {
v atomic.Value // v is a pointer to a metrics.Float64Histogram
v atomic.Pointer[metrics.Float64Histogram]
scaleFactor float64
}
@ -58,7 +58,7 @@ func (h *runtimeHistogram) Update(int64) {
// Snapshot returns a non-changing copy of the histogram.
func (h *runtimeHistogram) Snapshot() HistogramSnapshot {
hist := h.v.Load().(*metrics.Float64Histogram)
hist := h.v.Load()
return newRuntimeHistogramSnapshot(hist)
}