内存使用情况
jstat -gcutil pid 2000 5
jmap -heap pid
查看jvm的参数
jps -mvl
jinfo -flags pid
查看java系统参数
jinfo -sysprops pid
生成dump文件
jmap -dump:live,format=b,file=fileName pid
查看活跃对象
jmap ‐histo:live pid | more
定位某个线程问题
jstack pid | grep -C 20 `printf %x tid`
tid = top -Hp pid
动态设置jvm参数
jinfo -flag -PrintGC pid
堆大小设置
-Xms1g 初始堆空间大小
-Xmx1g 最大堆空间大小
-Xmn1g 年轻代空间大小
-Xss2m 线程的栈空间大小
堆信息输出设置
-XX:+PrintGC 在控制台输出GC日志
-XX:+PrintGCDetails 会自动开启在控制台输出GC日志
-XX:+PrintGCTimeStamps 输出GC的时间戳(以基准时间的形式)
-XX:+HeapDumpOnOutOfMemoryError 打印内存溢出时的堆信息
-XX:HeapDumpPath=./dump/ 生成的堆信息存放位置
-Xloggc:./gc.log 生成gc日志的信息
垃圾收集的主要算法
标记-清除 标记-整理 复制 分代收集
1引用计数算法(不能解决的问题引用循环问题)
2可达性分析算法
标签:dump,pid,XX,GC,JVM,jmap,jinfo
From: https://www.cnblogs.com/rbcd/p/16915807.html