如何在Java VisualVM中查看内存分配堆栈跟踪

sin*_*a72 16 java memory-leaks visualvm

本文介绍如何在Java VisualVM中查看内存分配堆栈跟踪:http://rejeev.blogspot.de/2009/04/analyzing-memory-leak-in-java.html

简而言之,在Java VisualVM选项中定义自定义预设,并选中内存设置选项卡中的"记录分配堆栈跟踪"复选框.

现在,当我选择自定义预设并启动内存分析时,我仍然无法查看内存分配堆栈跟踪.没有右键单击项目操作"拍摄快照并显示分配堆栈跟踪",如文章中所述,也没有类似的内容.我正在使用VisualVM 1.7.

如何查看这些分配堆栈跟踪?

Pet*_*use 20

如果看不到此选项,请转到Profiler - >激活"设置"复选框,并在探查器未激活时激活"记录分配堆栈跟踪".

  • 此外,在分析器运行时,您需要单击快照按钮,然后才能右键单击并查看分配堆栈跟踪. (4认同)

jke*_*kee 5

在“ 采样器”选项卡中启用“ 内存分析” ,然后按“ 堆转储”按钮。

  • 这是不同的-堆转储不会显示分配堆栈的痕迹。另外,要获取堆转储,无需在“采样器”选项卡中使用“内存”配置文件。您可以从“监视”选项卡或受监视的应用程序的上下文菜单中进行堆转储。 (7认同)