我无法在我的java程序中使用getProcessCpuTime()或getProcessCpuLoad()或getSystemCpuLoad()。我用过如下。
ManagementFactory. getOperatingSystemMXBean().getProcessCpuTime();
也喜欢这个
( (OperatingSystemMXBean) getOperatingSystemMXBean() ).getProcessCpuTime()
但是找不到类似方法getProcessCpuTime()的显示错误。我包括以下头文件。这还不够,或者我需要再使用了。?
import java.lang.management.ManagementFactory;
import java.lang.management.OperatingSystemMXBean;
任何人都可以建议我如何使用这些方法。我正在使用jdk1.6。我的代码在下面
import java.lang.management.ManagementFactory;
import java.lang.management.OperatingSystemMXBean;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
public class printUsage {
public static void main(String[] args) {
OperatingSystemMXBean operatingSystemMXBean = ManagementFactory.getOperatingSystemMXBean();
System.out.println("getCpuProcessTime()" + " = " + operatingSystemMXBean.getProcessCpuTime());
System.out.println("getCpuProcessTime()" + " = " + operatingSystemMXBean.getSystemCpuLoad());
System.out.println("getCpuProcessTime()" + " = " + operatingSystemMXBean.getProcessCpuLoad());
}
}
答案 0 :(得分:11)
导入一个
import com.sun.management.OperatingSystemMXBean;
不
import java.lang.management.OperatingSystemMXBean;
使用以下代码。
OperatingSystemMXBean operatingSystemMXBean = (com.sun.management.OperatingSystemMXBean)ManagementFactory.getOperatingSystemMXBean();
我使用此代码获得了有效的结果。
答案 1 :(得分:3)
查看以下javadoc:http://docs.oracle.com/javase/6/docs/api/
查看为OperatingSystemMXBean定义的方法。您的问题是,您正在寻找com.sun.management.OperatingSystemMXBean
中java.lang.management.OperatingSystemMXBean
中定义的方法。
包com.sun
主要供内部使用java创建者,而不是应用程序开发人员。您应该使用包java.lang.management
中的类,并参考相应的API文档。