这是获取系统正常运行时间性能计数器的方法:
public TimeSpan GetSystemUptime(){
PerformanceCounter upTime = new PerformanceCounter("System", "System Up Time");
upTime.NextValue();
return TimeSpan.FromSeconds(upTime.NextValue());
}
NextValue必须被调用两次,因为它在第一次调用时为0。 但我不明白为什么它使用一个必须被读两次的计数器。 我理解像CPU使用率[new PerformanceCounter(“处理器信息”,“%处理器时间”,“_总计”)]这样的东西需要2个值,因为它正在计算一段时间内的平均值。 但在计算系统正常运行时间时,为什么需要测量2次? 您是否只需要测量当前时间并将其与启动时间进行比较?