读书人

JAVA调优之工具:j地图+mat

发布时间: 2012-10-30 16:13:36 作者: rapoo

JAVA调优之工具:jmap+mat

用途:用来查找内存泄露
介绍
?
???????? Jmap:jdk自带,主要用来查看JVM各个代的内存情况或内存占用状况, 支持导出整个JVM内存信息
????????? MAT :Eclipse 内存分析工具:http://www.eclipse.org/mat
使用
1、dump出内存信息:jmap -dump:format=b,file=dump.bin pid
2、eclipse 安装好mat插件: http://download.eclipse.org/mat/1.0/update-site/
3、eclipse直接打开dump的文件:dump.bin(注意:eclipse 内存设置大一点)
4、mat工具的具体使用网上比较多,还是比较好使用。分析后的文件可以生成html格式的,方便离线使用

?

试验代码

public class OutOfMemory {    private String str;    public OutOfMemory(String str) {        this.str = str;    }    public static void main(String[] args) throws InterruptedException {        HashMap<Integer, OutOfMemory> map = new HashMap<Integer, OutOfMemory>();        String s = "O";        for (Integer i = 0; i < 100; i++) {            s += s;            OutOfMemory o = new OutOfMemory(s);            map.put(i, o);            Thread.sleep(2000);            System.out.println(i);        }    }}

?

运行:java Xmx128m Xms128m OutOfMemory






?

读书人网 >编程

热点推荐