我使用 Oshi API ( https://github.com/oshi/oshi ) 来获取 CPU 使用率。但是,为什么该值与任务管理器 CPU 利用率不同?我的错误是什么?
我的计划 - 平均 11.13%
任务管理器 - 平均约 29%
编辑代码
private SystemInfo systemInformation = new SystemInfo();
private CentralProcessor proc = systemInformation.getHardware().getProcessor();
private static float[] floatArrayPercent(double d) {
float[] f = new float[1];
f[0] = (float) (100d * d);
return f;
}
private double cpuData(CentralProcessor proc) {
double d = proc.getSystemCpuLoadBetweenTicks(oldTicks);
oldTicks = proc.getSystemCpuLoadTicks();
return d;
}
@Scheduled(fixedRate = 10)
public void processProcessorInformation() {
System.out.println("The percentage of the floating value cpu: " + floatArrayPercent(cpuData(proc))[0]);
}