当前位置:网站首页 > 技术博客 > 正文

jvm jmap



jmap命令简介

jmap(Java Virtual Machine Memory Map)是JDK提供的一个可以生成Java虚拟机的堆转储快照dump文件的命令行工具。除此以外,jmap命令还可以查看finalize执行队列、Java堆和方法区的详细信息,比如空间使用率、当前使用的什么垃圾回收器、分代情况等等。

和jinfo命令一样,在Windows系统上使用还是有一些限制的。在没有的Windows系统中,必须安装用于Windows的调试工具才能使jinfo命令正常工作,PATH环境变量应该包含jvm.dll的位置。

jmap命令参数

命令语法:

命令参数说明:

想要要获取运行的Java虚拟机进程的列表,可以使用ps命令(Linux系统中)或tasklist命令(Windows系统中),如果Java虚拟机进程没有在单独的docker实例中运行,可以使用jps命令。

都有哪些参数呢?我们来看一下。

-heap

显示Java堆的如下信息:

比如:

-histo[:live]

显示Java堆中对象的统计信息,包括:对象数量、占用内存大小(单位:字节)和类的完全限定名。比如:

要获得某个对象的大小,可以将其总大小除以该对象类型的数量。如果指定了参数,则只计算活动的对象。比如:

-clstats

显示Java堆中元空间的类加载器的统计信息,包括:

class_loader:当Java虚拟机运行时,类加载器对象的地址 classes:已加载类的数量 bytes:该类加载器加载的所有类的元数据所占的字节数 parent_loader:父类加载器对象的地址,如果没有显示。alive:是否存活的标识,表示类加载器对象是否将被垃圾回收。type:该类加载器的类名。

比如:

-finalizerinfo

显示在F-Queue中等待Finalizer线程执行finalize方法的对象。比如:

-dump:[live,]format=b,file=

生成Java虚拟机的堆转储快照dump文件。具体说明如下:

比如:

-F

强制模式。如果指定的pid没有响应,可以配合或一起使用。此模式下,不支持live参数。比如:

-h 和 -help

显示jinfo命令的帮助信息。

版权声明


相关文章:

  • 用什么查看网络接口的状态2024-11-28 08:01:01
  • windows7无法打开exe2024-11-28 08:01:01
  • 微信小程序客服怎么设置2024-11-28 08:01:01
  • seq2seq模型存在哪些问题2024-11-28 08:01:01
  • 逻辑回归模型的公式2024-11-28 08:01:01
  • libxml2 python2024-11-28 08:01:01
  • java中内部类和外部类2024-11-28 08:01:01
  • 网络爬虫需要什么软件2024-11-28 08:01:01
  • 智能语音营销2024-11-28 08:01:01
  • phpjpg一句话木马2024-11-28 08:01:01