linux top命令和jconsole堆使用的内存是如此不同

时间:2016-06-07 03:12:25

标签: java linux jmx jconsole top-command

the memory displayed by linux top command

the heap usage of the same jvm

它们显示的同一程序的内存使用情况是如此不同。 是否有其他东西需要记忆?

2 个答案:

答案 0 :(得分:2)

  

它们显示的同一程序的内存使用情况是如此不同。是否有其他东西需要记忆?

是。 Java分配它的'大块内存并在内部管理这些块(作为单个进程)。 linux top命令只将JVM视为一个整体(而不是内部内存使用情况)。为此,使用jconsole;它显示了可用的内存量(在JVM中)。

答案 1 :(得分:1)

另外,您还可以从OperatingSystemMXBean获取JVM OS进程总内存使用量。