从CounterSample
返回的PerformanceCounter.NextSample()
个实例是否可配置?我可以配置计数器和采样,例如每分钟查询5次即时值并给我5分钟的平均值?如何确定抽样?
以下是_Total
的处理器/%处理器时间示例var procProcTime = new PerformanceCounter("Processor", "% Processor Time", "_Total", true);
var sample = procProcTime.NextSample();
do
{
await Task.Delay(_delay5Minutes);
var newSample = procProcTime.NextSample();
var avg5Minutes = CounterSample.Calculate(sample, newSample);
}
while (!token.IsCancellationRequested);
尝试逆向工程the docs很痛苦。由于CounterSample
具有只读属性,看起来像计数器提供程序(在此示例中,处理器/%处理器时间)预先确定了采样?
这些文档非常丰富,但却难以理解。