您可以使用该jmap命令打印指定进程的详细信息。此命令是实验性的,不受支持。对于核心文件使用jhsdb jmap。
概要
注意: 此命令是实验性的,不受支持。
jmap [options] pid
options
这代表jmap命令行选项。请参阅jmap命令的选项。
pid
options要为其打印由所指定的信息的进程ID 。该进程必须是Java进程。要获取在机器上运行的Java进程的列表,请使用以下ps命令,或者,如果JVM进程不在单独的docker实例中运行,请使用jps命令。
注意:当附加到在单独的docker进程中运行的Java进程时,JDK 10添加了对使用Attach API的支持。但是,该jps命令不会列出在单独的docker实例中运行的JVM进程。如果尝试将Linux主机与Docker容器中的虚拟机连接,则必须使用诸如ps查找JVM PID的工具。
描述
该jmap命令显示指定运行进程的详细信息。
注意: 此命令不受支持,在以后的JDK版本中可能不可用。在dbgeng.dll不存在该文件的Windows系统上,必须安装Windows调试工具才能使这些工具正常工作。在PATH环境变量中应包含的位置jvm.dll,这些会用来由目标过程或从其中核心转储文件产生的位置的文件。
jmap命令的选项
-clstats pid
连接到正在运行的进程,并打印Java堆的类加载器统计信息。
-finalizerinfo pid
连接到正在运行的进程,并在等待完成的对象上打印信息。
-histo[:live] pid
连接到正在运行的进程,并打印Java对象堆的直方图。如果live指定了子选项,则它仅计算活动对象。
-dump:dump_options pid
连接到正在运行的进程并转储Java堆。该dump_options包括:
live—指定时,仅转储活动对象;如果未指定,则转储堆中的所有对象。
format=b—转储Java堆。在hprof二进制格式
file=filename —将堆转储到 filename
例: jmap -dump:live,format=b,file=heap.bin pid