package cn.dsna.common.java;
import java.lang.Runtime;
/**
* 查看JVM内存大小
* @author DSNA
* @date 2010-04-21
*/
public class JVMMemory {
public static void main(String args[]) {
System.out.println(new JVMMemory());
}
/**
* 已占用内存
*
* @return
*/
public long totalMemory() {
long l = Runtime.getRuntime().totalMemory();
return (l / 1024 / 1024);
}
/**
* 分配最大内存
*
* @return
*/
public long maxMemory() {
long l = Runtime.getRuntime().maxMemory();
return (l / 1024 / 1024);
}
/**
* 空余内存
* @return
*/
public long freeMemory() {
long l = Runtime.getRuntime().freeMemory();
return (l / 1024 / 1024);
}
public String toString(){
long t = totalMemory();
long fr = freeMemory();
long max = maxMemory();
long rem = t - fr;
StringBuilder sb=new StringBuilder();
sb
.append("最大内存:" + max + " MB\n")
.append("占用系统内存:" + t + " MB\n")
.append("实际占用内存:" + rem + " MB\n")
.append("剩余内存:" + fr + " MB\n");
return sb.toString();
}
}
// 改变JVM内存大小的方法
// java -Xms100m -Xmx250 JVMMemory
//eclipse设置jvm arg Run>run config.... (x)- >jvm -arg.......
// -Xmx1024M -Xms512M -XX:MaxPermSize=256m
引自:http://dsna.iteye.com/blog/648331