注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

逍遥子 曰:

得失失得 何必患得患失 舍得得舍 不妨不舍不得

 
 
 

日志

 
 

jmap简单实用示例[原]  

2014-12-02 19:51:54|  分类: JAVA |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

jmap这些工具是jdk自带的调试工具,安装完之后位于bin目录下,例如:/usr/java/jdk1.7.0_67/bin/

 jmap用来查看堆内存使用状况,一般结合jhat使用。

1.jmap语法格式如下:

jmap [option] pid
jmap [option] executable core
jmap [option] [server-id@]remote-hostname-or-ip
如果运行在64位JVM上,可能需要指定-J-d64命令选项参数。
jmap -permstat pid

 打印进程的类加载器和类加载器加载的持久代对象信息,输出:类加载器名称、对象是否存活(不可靠)、对象地址、父类加载器、已加载的类大小等信息

[root@bogon usr]# jmap -permstat 10424
Attaching to process ID 10424, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 24.60-b09
finding class loader instances ..done.
computing per loader stat ..done.
please wait.. computing liveness........................done.
class_loader classes bytes parent_loader alive? type


<bootstrap> 1493 6084856   null   live <internal>
0xa18d1590 1229 6218584 0xa18d15e0 live sun/misc/Launcher$AppClassLoader@0x70f65b98
0xa1a77c00 0 0 0xa18d1590 live com/alibaba/fastjson/util/ASMClassLoader@0x712b4aa8
0xa18d15e0 0 0   null   live sun/misc/Launcher$ExtClassLoader@0x70f27d38
0xa1aed110 0 0 0xa18d1590 live java/util/ResourceBundle$RBClassLoader@0x7120e368



2.导出到文件:

 jmap -dump:format=b,file=/usr/test33.bin  10424

3.直接显示

jmap -histo 10424


 num     #instances         #bytes  class name
----------------------------------------------
   1:         34301        8999856  [B
   2:         30979        3689456  <constMethodKlass>
   3:         39666        3590512  [C
   4:           915        3165600  [I
   5:         30979        2731984  <methodKlass>
   6:          2441        1457456  <constantPoolKlass>
   7:          2441         995568  <instanceKlassKlass>
   8:          2146         852496  <constantPoolCacheKlass>
   9:         26281         630744  java.lang.String
  10:          2660         323400  java.lang.Class
  11:          4025         244360  [S
  12:          4870         233760  java.nio.HeapByteBuffer
  13:          4721         226608  java.nio.HeapCharBuffer
  14:          3150         223296  [Ljava.lang.Object;
  15:          8468         203232  java.util.HashMap$Entry
  16:          3961         202624  [[I

  17:          4322         165752  [[B


这里:

  • [C is a char[]
  • [S is a short[]
  • [I is a int[]
  • [B is a byte[]
  • [[I is a int[][]

constMethodKlass/ methodKlass/ constantPoolKlass/ constantPoolCacheKlass/ instanceKlassKlass/ methodDataKlass

与Classloader相关,常驻Perm区。

  评论这张
 
阅读(491)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017