7 测试类准备 8 设置JVM 参数

1  测试类准备


http://download.csdn.net/detail/xieyuntestshow/4255608

http://download.csdn.net/detail/xieyuntestshow/4255612

1          设置JVM 参数

首先需要设置了如下所示的 JVM 参数:

-XX:+HeapDumpOnOutOfMemoryError

JVM 就会在发生内存泄露时抓拍下当时的内存状态,也就是我们想要的堆转储文件

如果你不想等到发生崩溃性的错误时才获得堆转储文件,也可以通过设置如下 JVM 参数来按需获取堆转储文件。

-XX:+HeapDumpOnCtrlBreak

除此之外,还有很多的工具,例如 JMap,JConsole 都可以帮助我们得到一个堆转储文件。本文实例就是使用JMap 直接获取了 Eclipse Galileo 进程的堆转储文件。您可以使用如下命令:

 

JMap -dump:format=b,file=<dumpfile> <pid>

jmap -dump:format=b,file=HeapDump.hprof/path/to/bin/java core_dump_file

 

 

Via Tools:

     * Sun(Linux, Solaris; not on Windows) JMap Java 5: jmap-heap:format=b <pid>

* Sun (Linux, Solaris; Windows see link) JMap Java 6: jmap.exe -dump:format=b,file=HeapDump.hprof <pid>

* Sun (Linus, Solaris) JMap withCore Dump File: jmap -dump:format=b,file=HeapDump.hprof/path/to/bin/java core_dump_file

* Sun JConsole: Launch jconsole.exe and invoke operationdumpHeap() on HotSpotDiagnostic MBean

* SAP JVMMon: Launch jvmmon.exe and call menu for dumping theheap

不过,您需要了解到,不同厂家的 JVM 所生成的堆转储文件在数据存储格式以及数据存储内容上有很多区别, MAT 不是一个万能工具,它并不能处理所有类型的堆存储文件。但是比较主流的厂家和格式,例如 Sun, HP, SAP 所采用的HPROF 二进制堆存储文件,以及 IBM 的 PHD 堆存储文件等都能被很好的解析(您需要安装额外的插件,请参考相关说明,本文不作详细解释)。

 

万事俱备,接下来,我们就可以开始体验一键式的堆存储分析功能了。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值