码迷,mamicode.com
首页 > 编程语言 > 详细

jmap(Memory Map For Java)

时间:2015-03-02 14:42:10      阅读:225      评论:0      收藏:0      [点我收藏+]

标签:

功能
 
jmap(Memory Map For Java)命令用于生成堆转储快照(一般称为heaphump或dump文件)。如果不使用jmap命令,要想获取Java堆转储快照还有一些比较“暴力”的手段:使用-XX:HeapDumpOnOutOfMemoryError参数,可以让虚拟机在OOM异常出现之后自动生成dump文件;通过-XX:HeapDumpOnCtrlBreak参数则可以使用[Ctrl]+[Break]键让虚拟机生成dump文件,又或者在Linux系统下通过Kill -3命令发送进程退出信号“恐吓”一下虚拟机,也能拿到dump文件。
 
jmap的作用并不仅仅是为了获取dump文件,它还可以查询finalize执行队列,Java堆和永久代的详细信息,如空间使用率、当前用的是哪种收集器等。
 
命令
 
jmap [option] vmid
 
技术分享
 技术分享
说明
 
-dump:生成Java堆转储快照。格式为:-dump:[live,]format=b,file=<filename>,其中live子参数说明是否只dump出存活的对象。
 
-finalizerinfo:显示在F-Queue中等待Finalizer线程执行finalize方法的对象。只在Linux/Solaris平台下有效。
 
-heap:显示Java堆详细信息,如使用哪种回收器、参数配置、分代状况等。只在Linux/Solaris平台下有效。
 
-histo:显示堆中对象统计信息,包括类、实例数量和合计容量。
 
-permstat:以ClassLoader为统计口径显示永久代内存状态。只在Linux/Solaris平台下有效。
 
-F:当虚拟机进程对-dump选项没有响应时,可使用这个选项强制生成dump快照。只在Linux/Solaris平台下有效。
 
示例
 
jmap -dump:format=b,file=eclipse.bin 3500

jmap(Memory Map For Java)

标签:

原文地址:http://www.cnblogs.com/yurunmiao/p/4308469.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!