我想使用 Java 查找系统中每个可用处理器的使用情况。我使用以下方法获得了系统中可用处理器的数量:
com.sun.management.OperatingSystemMXBean) ManagementFactory().getOperatingSystemMXBean().getAvailableProcessors();
但无法找到每个可用处理器的使用情况。
请提出一些解决方案。我还需要在系统中使用硬盘。
我想使用 Java 查找系统中每个可用处理器的使用情况。我使用以下方法获得了系统中可用处理器的数量:
com.sun.management.OperatingSystemMXBean) ManagementFactory().getOperatingSystemMXBean().getAvailableProcessors();
但无法找到每个可用处理器的使用情况。
请提出一些解决方案。我还需要在系统中使用硬盘。
您可以为此使用SIGAR API
或者你可以试试这个来找出 CPU 和 RAM 的使用情况。
import java.lang.management.ManagementFactory;
import java.lang.management.OperatingSystemMXBean;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
private static void printUsage() {
OperatingSystemMXBean operatingSystemMXBean = ManagementFactory.getOperatingSystemMXBean();
for (Method method : operatingSystemMXBean.getClass().getDeclaredMethods()) {
method.setAccessible(true);
if (method.getName().startsWith("get")
&& Modifier.isPublic(method.getModifiers())) {
Object value;
try {
value = method.invoke(operatingSystemMXBean);
} catch (Exception e) {
value = e;
}
System.out.println(method.getName() + " = " + value);
}
}
}
看看这个线程