Source File
sample.go
Belonging Package
runtime/metrics
// Copyright 2020 The Go Authors. All rights reserved.// Use of this source code is governed by a BSD-style// license that can be found in the LICENSE file.package metricsimport (_ // depends on the runtime via a linkname'd function)// Sample captures a single metric sample.type Sample struct {// Name is the name of the metric sampled.//// It must correspond to a name in one of the metric descriptions// returned by All.Name string// Value is the value of the metric sample.Value Value}// Implemented in the runtime.func runtime_readMetrics(unsafe.Pointer, int, int)// Read populates each [Value] field in the given slice of metric samples.//// Desired metrics should be present in the slice with the appropriate name.// The user of this API is encouraged to re-use the same slice between calls for// efficiency, but is not required to do so.//// Note that re-use has some caveats. Notably, Values should not be read or// manipulated while a Read with that value is outstanding; that is a data race.// This property includes pointer-typed Values (for example, [Float64Histogram])// whose underlying storage will be reused by Read when possible. To safely use// such values in a concurrent setting, all data must be deep-copied.//// It is safe to execute multiple Read calls concurrently, but their arguments// must share no underlying memory. When in doubt, create a new []Sample from// scratch, which is always safe, though may be inefficient.//// Sample values with names not appearing in [All] will have their Value populated// as KindBad to indicate that the name is unknown.func ( []Sample) {runtime_readMetrics(unsafe.Pointer(&[0]), len(), cap())}
![]() |
The pages are generated with Golds v0.7.9-preview. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |