Windows的getSystemLoadAverage()替代?

Nav*_*ngh 5 java cpu cpu-usage cpu-speed mxbean

我正在使用一些代码来使用Java监视Cpu负载.我在我的应用程序中使用以下代码来获取系统负载

    public static double getCPULoad() {
    OperatingSystemMXBean osMBean
            = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();

    double load = osMBean.getSystemLoadAverage();

    return load;
    }
Run Code Online (Sandbox Code Playgroud)

但是在Windows上它会返回一个负值(-1.0).有什么办法可以解决这个问题吗?

Uli*_*Uli 3

请阅读此博客。这不是官方解决方案,但使用时com.sun.management.OperatingSystemMXBeanjava.lang.management.OperatingSystemMXBean两种方法getSystemCpuLoad()有效getProcessCpuLoad()