查看jdk加载了多少类到jvm中:jmap -histo 430|grep com.qiyi|more
430代表进程号
作用:可以看那个类被new的次数最大,占用的资源最大,有时候内存溢出的时候可以检查一下
如图所示:
########################################################
jmap还可以做什么?
1、jmap -histo[:live]
通过histo选项,打印当前java堆中各个对象的数量、大小。
如果添加了live,只会打印活跃的对象。
如:
所有对象:jmap -histo 20587|more
活跃对象:jmap -histo:live 20587|more
2、jmap -dump:[live,]format=b,file=
通过-dump选项,把java堆中的对象dump到本地文件,然后使用MAT进行分析。
如果添加了live,只会dump活跃的对象。
如:
jmap -dump:format=b,file=temp_dump.log 20587
3、jmap -heap
通过-heap选项,打印java堆的配置情况和使用情况,还有使用的GC算法。
4、jmap -finalizerinfo
通过-finalizerinfo选项,打印那些正在等待执行finalize方法的对象。
5、jmap -permstat
通过-permstat选项,打印java堆永久代的信息,包括class loader相关的信息,和interned Strings的信息。