三种方法查看:
方法一:通过如下一段代码可以查看JVM的内存信息:
public static void main(String[] args) {
//JVM的最大可用内存,可通过-Xmx设置,默认值为物理内存的1/4,设置不能高于计算机物理内存
//返回值单位是字节
long maxMemory = Runtime.getRuntime().maxMemory();
//当前JVM空闲内存,因为JVM只有在需要内存时才占用物理内存使用,所以freeMemory()的值一般情况下都很小,
//而JVM实际可用内存并不等于freeMemory(),而应该等于maxMemory()-totalMemory()+freeMemory()
long freeMemory = Runtime.getRuntime().freeMemory();
//当前JVM占用的内存总数,其值相当于当前JVM已使用的内存及freeMemory()的总和,会随着JVM使用内存的增加而增加
long totalMemory = Runtime.getRuntime().totalMemory();
System.out.println("JVM最大可用内存:"+maxMemory);
System.out.println("当前JVM空闲内存:"+freeMemory);
System.out.println("当前JVM占用的内存总数:"+totalMemory);
System.out.println("JVM实际可用内存:"+(maxMemory-totalMemory+freeMemory));
}
方法二:进入cmd,执行jvisualvm 命令,或者在java的bin目录下执行jvisualvm.exe,就会进入下图页面:
方法三:进入cmd,执行jconsole 命令,或者在java的bin目录下执行jconsole.exe,就会进入下图页面: