Skip to main content

How to use getSystemCpuLoad() in JMX



Hi i cant able to use getProcessCpuTime() or getProcessCpuLoad() or getSystemCpuLoad() in my java program. I used like below.







ManagementFactory. getOperatingSystemMXBean().getProcessCpuTime();







also like this







( (OperatingSystemMXBean) getOperatingSystemMXBean() ).getProcessCpuTime()







But its showing error like method getProcessCpuTime() is not found. I included the following header files. Is that enough or i need to use any more.?







import java.lang.management.ManagementFactory;

import java.lang.management.OperatingSystemMXBean;







Can anyone please suggest me how to use these methods. am using jdk1.6. And my code is below







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());

}



}




Comments

  1. import following one

    import com.sun.management.OperatingSystemMXBean;


    Not

    import java.lang.management.OperatingSystemMXBean;


    Use following code.

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


    I am getting valid results with this code.

    ReplyDelete
  2. Take a look on the following javadoc: http://docs.oracle.com/javase/6/docs/api/

    See what methods are defined for OperatingSystemMXBean. Your problem is that you are looking for methods defined in com.sun.management.OperatingSystemMXBean into java.lang.management.OperatingSystemMXBean.

    Package com.sun is mostly for internal use of java creators, not for application developers. You should use classes from package java.lang.management and refer to appropriate API doc.

    ReplyDelete

Post a Comment

Popular posts from this blog

Slow Android emulator

I have a 2.67 GHz Celeron processor, 1.21 GB of RAM on a x86 Windows XP Professional machine. My understanding is that the Android emulator should start fairly quickly on such a machine, but for me it does not. I have followed all instructions in setting up the IDE, SDKs, JDKs and such and have had some success in staring the emulator quickly but is very particulary. How can I, if possible, fix this problem?