jmap命令可以获取运行中的jvm的快照,从而离线分析,检查内存泄漏,检查一些严重影响性能的大对象的创建,检查系统中最多的对象,各种对象所占用的内存大小.可以使用jmap生成Heap Dump....一般,在内存不足,GC异常等情况下,我们就会怀疑内存泄漏,这个时候就可以制作堆(Dump)来查询具体情况。
常见的内存错误
> outOfMemoryError 年老代内存不足。...> outOfMemoryError:PermGen Space 永久代内存不足。...jmap -heap pid
查看java堆信息
Attaching to process ID 18378, please wait......jmap pid
查看进程的内存映像信息,类似 Solaris pmap 命令
使用不带选项参数的jmap打印共享对象映射,将会打印目标虚拟机中加载的每个共享对象的起始地址、映射大小以及共享对象文件的路径全称