何时使用jmap -J <flag>选项?

时间:2018-07-28 13:00:17

标签: java jmap

我正在阅读jmap命令文档。 -J选项的文档如下所示。

-J<flag> : to pass <flag> directly to the runtime system

我不明白,这种情况到底有什么帮助。为了实验起见,我尝试使用以下命令来增加正在运行的应用程序的堆大小。

jmap -J-Xmx1024m <PROCESS_ID>

但是堆大小没有变化。我想知道jmap -J选项的用例。请帮助我理解-J选项。

1 个答案:

答案 0 :(得分:1)

不幸的是,文档所指的运行时系统是jmap命令在其中运行的Java进程-它也是用Java编写的。

-Jjmap中可以正常运行-例如一种检查方法是减少内存过多:

C:\>jmap -J-Xmx1m -histo <pid>
Error occurred during initialization of VM
Initial heap size set to a larger value than the maximum heap size

关于增加正在运行的Java进程的堆大小,我不知道要执行此操作的任何选项。 This thread在很大程度上证实了这一点。

您可以对运行的JVM进行的大多数更改来自JConsole中的JMX bean,但不幸的是not memory changes