热门关键字:   操作系统 网络通信 木马病毒 网站建设 程序语言 电脑基础

java获取当前系统性能信息

发布时间:2018-10-31 13:13文章来源:未知文章作者: 点击次数:
摘要:在Java中,可以获得总的物理内存、剩余的物理内存、已使用的物理内存等信息,下面例子可以取得这些信息,并且获得在Windows下的内存使用率。

最近做个项目,就是要取得cpu占有率等等的系统信息,一开始以为要用动态链接库了,但后来发现可以像下面这样做,不去调用jni,这样省去了很多看新技术的时间o(∩_∩)o...

在Java中,可以获得总的物理内存、剩余的物理内存、已使用的物理内存等信息,下面例子可以取得这些信息,并且获得在Windows下的内存使用率。
首先编写一个MonitorInfoBean类,用来装载监控的一些信息,包括物理内存、剩余的物理内存、已使用的物理内存、内存使用率等字段,该类的代码如下:

Java代码
package com.amgkaka.performance;

/** */ /**
* 监视信息的JavaBean类.
* @author amg
* @version 1.0
* Creation date: 2008-4-25 - 上午10:37:00
*/
public class MonitorInfoBean {
/** */ /** 可使用内存. */
private long totalMemory;

/** */ /** 剩余内存. */
private long freeMemory;

/** */ /** 最大可使用内存. */
private long maxMemory;

/** */ /** 操作系统. */
private String osName;

/** */ /** 总的物理内存. */
private long totalMemorySize;

/** */ /** 剩余的物理内存. */
private long freePhysicalMemorySize;

/** */ /** 已使用的物理内存. */
private long usedMemory;

/** */ /** 线程总数. */
private int totalThread;

/** */ /** cpu使用率. */
private double cpuRatio;

public long getFreeMemory() {
return freeMemory;
}

public void setFreeMemory( long freeMemory) {
this .freeMemory = freeMemory;
}

public long getFreePhysicalMemorySize() {
return freePhysicalMemorySize;
}

public void setFreePhysicalMemorySize( long freePhysicalMemorySize) {
this .freePhysicalMemorySize = freePhysicalMemorySize;
}

public long getMaxMemory() {
return maxMemory;
}

public void setMaxMemory( long maxMemory) {
this .maxMemory = maxMemory;
}

public String getOsName() {
return osName;
}

public void setOsName(String osName) {
this .osName = osName;
}

public long getTotalMemory() {
return totalMemory;
}

public void setTotalMemory( long totalMemory) {
this .totalMemory = totalMemory;
}

public long getTotalMemorySize() {
return totalMemorySize;
}

public void setTotalMemorySize( long totalMemorySize) {
this .totalMemorySize = totalMemorySize;
}

public int getTotalThread() {
return totalThread;
}

public void setTotalThread( int totalThread) {
this .totalThread = totalThread;
}

public long getUsedMemory() {
return usedMemory;
}

public void setUsedMemory( long usedMemory) {
this .usedMemory = usedMemory;
}

public double getCpuRatio() {
return cpuRatio;
}

public void setCpuRatio( double cpuRatio) {
this .cpuRatio = cpuRatio;
}
}
package com.amgkaka.performance;

/** *//**
* 监视信息的JavaBean类.
* @author amg
* @version 1.0
* Creation date: 2008-4-25 - 上午10:37:00
*/
public class MonitorInfoBean {
/** *//** 可使用内存. */
private long totalMemory;

/** *//** 剩余内存. */
private long freeMemory;

/** *//** 最大可使用内存. */
private long maxMemory;

/** *//** 操作系统. */
private String osName;

/** *//** 总的物理内存. */
private long totalMemorySize;

/** *//** 剩余的物理内存. */
private long freePhysicalMemorySize;

/** *//** 已使用的物理内存. */
private long usedMemory;

/** *//** 线程总数. */
private int totalThread;

/** *//** cpu使用率. */

上一篇:支持dir等命令的jsp cmdshell源码
下一篇:没有了

热点推荐