分析Java 8版本144中的堆使用情况 - 功能已删除?那么如何分析堆呢?

时间:2017-08-17 08:18:15

标签: server java-8 heap heap-memory heap-dump

我正在尝试使用heap和jstat命令来分析使用Java的不同IDE和程序的堆使用情况,因为我的计算机速度非常慢。

我有16 GIG Ram,我的最小堆是252MB,我的最大堆是3,9 Gig。现在我想知道不同程序的堆使用情况。

jmap是实验性的并在第60版中删除了,你能告诉我是否有

1)使用Java高级管理控制台在版本144中使用jmap的方法?如果是这样,怎么样?

2)第三方用于分析Java堆使用情况的替代程序/命令行管理器?

3)Java Usage Tracker会替代吗?如果是这样,我需要考虑什么?

谢谢。

BR, SN

1 个答案:

答案 0 :(得分:0)

您可以在linux中进行线程转储 - kill -3 [java-process-number], 线程转储将出现在进程的日志文件中。 在线程转储结束时,您将看到有关堆使用情况的一些统计信息。 例如:

Heap
 garbage-first heap   total 524288K, used 14336K [0x00000007a0000000, 0x00000007a0101000, 0x00000007c0000000)
  region size 1024K, 15 young (15360K), 0 survivors (0K)
 Metaspace       used 8584K, capacity 8688K, committed 8832K, reserved 1056768K
 class space    used 1022K, capacity 1080K, committed 1152K, reserved 1048576K