解决jmap命令打印JVM堆信息异常的问题

上传:qqstrategy55120 浏览: 14 推荐: 0 文件:pdf 大小:329.51 KB 上传时间:2022-02-27 15:20:58 版权申诉

jmap命令可以打印java进程的JVM堆信息,今天在某台机器上运行该命令查看 19560进程的堆信息。出现以下异常是因为机器上缺少 openjdk-debuginfo 包 或者 机器上的 openjdk-debuginfo 包与jdk版本不一致导致是用 java -version 查看机器上的java版本。jps可以列出jvm进程lvmid,主类类名,main函数参数, jvm参数,jar名称等信息。Metaspace里面有ccs, CodeCache等ccs表示启用指向自己类文件的短指针的时候就会存在ccs。CodeCache:存放jit编译代码信息。查看可能存在内存溢出:查看类占用内存大小正则匹配查看我们的类占用内存大小jstack 查看线程。注意: top命令查看pid是十进制的,printf “%x” 23789 就将23789转化为16进制5ced。然后在23789.txt中搜索ox5ced,就能找到pid对应的类信息死循环案例分析:jstack 线程id > 线程id.txt在文件末尾,我们就可以看到明显的死锁信息。

上传资源
用户评论