相关疑难解决方法(0)

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

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

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

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

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

java memory-leaks visualvm

16
推荐指数
2
解决办法
1万
查看次数

hprof中"没有引用"的对象

我正在调查hprofVisualVM中的文件

服务器正在运行JDK 1.4.2_30并且具有1 GB堆,NewSize为200 Mb.

hprof显示由56000个实例占用的堆的71%,int[]并且当在VisualVM中查看时,这些56K阵列中没有一个具有引用

按照我们的说法,如果没有"参考",这应该是垃圾收集.所以问题是:

a)有没有办法找出这些参考文献?

b)这是一个不正确的快照 - 即采取堆转储的操作是否做了某种GC?

c)我们应该在VisualVM中查看"保留大小"对象吗?

作为更新 - 我们仍然不知道它们int[]是什么,但是下一个最大的对象是Pool中的Weblogic内部EJB引用,并且我们在其中一个中发现了一个不正确的设置,它将内存使用率降低了30%来自早期频繁的Full GC

jvm visualvm

5
推荐指数
1
解决办法
1065
查看次数

标签 统计

visualvm ×2

java ×1

jvm ×1

memory-leaks ×1