Navdeep Singh
Navdeep Singh

Reputation: 63

Alternate of getSystemLoadAverage() for Windows?

I am working on with some code to monitor Cpu load using Java. I am using following code in my app to get system load

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

    double load = osMBean.getSystemLoadAverage();
    return load;
}

But on windows it returns me a negative value (-1.0). Is there any way i can solve this problem?

Upvotes: 6

Views: 2933

Answers (1)

Uli
Uli

Reputation: 1400

Please read this blog. It's not an official solution but when using com.sun.management.OperatingSystemMXBean instead of java.lang.management.OperatingSystemMXBean there are two methods getSystemCpuLoad() and getProcessCpuLoad() that are working.

Upvotes: 3

Related Questions