版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
jvm进程占用内存大小
已使用=伊甸园used+S区used+old used+Metaspace used+CompressedClassSpaceUsed
打印jvm进程,查看pid,名称,指令
jps -lv
jcmd -l
dump
jcmd pid GC.heap_dump fillpath.....hprof
#dump
jmap -dump:live,format=b,file=risk.temp.hprof pid
jmap -dump:format=b,file=heap.bin pid
堆内存:
#查看堆内存总体概况
jmap -heap pid
#查看堆中对象的数量以及大小
jmap -histo pid
#加上live 统计活动的对象信息
jmap -histo:live pid
#查看等待finalizerinfo的对象
jmap -finalizerinfo pid
GC信息
#查看gc容量
jstat -gccapacity pid 1000 10
#查看gc
jstat -gc pid 1000 2
#查看各空间利用率
jstat -gcutil pid 1000 2
#查看元空间容量
jstat -gcmetacapacity pid
jvm系统变量属性
#64位jdk 打印系统属性
jinfo -J-d64 -sysprops pid
jcmd pid VM.system_properties
#打印系统属性 打印vm指令
jinfo -J-d64 pid
#打印jvm属性信息,
jinfo -J-d64 -flags pid
jcmd pid VM.flags
#修改jvm参数
jinfo -flag flagName=value pid
#打印jvm的启动指令
jcmd pid VM.command_line
#打印vm指令信息,以MaxHeapSize为例
jinfo -J-d64 -flag MaxHeapSize pid
jcmd操作
#强制调用已经失去引用的对象的finalize方法
#system.runFinalization()
jcmd pid GC.run_finalization
#告诉垃圾收集器打算进行垃圾收集,而垃圾收集器进不进行收集是不确定的
#System.gc()
jcmd pid GC.run
#查看jdk属性
jcmd pid PerfCounter.print
#查看jvm版本
jcmd pid VM.version