2012-02-09 80 views
6

您好我無法在我的java程序中使用getProcessCpuTime()或getProcessCpuLoad()或getSystemCpuLoad()。我用在下面。如何在JMX中使用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

你能發表更多的代碼嗎? – kosa 2012-02-09 17:09:38

+0

請參閱我發佈的代碼 – shagul 2012-02-09 17:14:18

回答

11

進口下列一個

import com.sun.management.OperatingSystemMXBean; 

import java.lang.management.OperatingSystemMXBean; 

使用下面的代碼。

OperatingSystemMXBean operatingSystemMXBean = (com.sun.management.OperatingSystemMXBean)ManagementFactory.getOperatingSystemMXBean(); 

我使用此代碼得到了有效的結果。

+0

ya其工作正常getProcessCpuTime()但它再次顯示錯誤,如果我嘗試getSystemCpuLoad()和getProcessCpuTime().. – shagul 2012-02-09 17:30:39

+0

文檔中沒有方法getSystemCpuLoad。 http://docs.oracle.com/javase/6/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html。 – kosa 2012-02-09 17:36:28

+0

我在下面的鏈接中找到了這些方法[鏈接](http://download.java.net/jdk8/docs/jre/api/management/extension/com/sun/management/OperatingSystemMXBean.html#getProcessCpuTime()) – shagul 2012-02-09 17:39:03

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文檔。