2

我正在运行 JRE 1.6.0_51 (amd64) 的进程中使用 JProfiler 7.2.3 调试内存泄漏:

$ java -version
java version "1.6.0_51"
Java(TM) SE Runtime Environment (build 1.6.0_51-b11-457-11M4509)
Java HotSpot(TM) 64-Bit Server VM (build 20.51-b01-457, mixed mode)

JProfiler 的分配调用树显示在和中java.lang.Long分配的对象。我深入研究了 JVM 源代码,并没有发现那里有任何内存分配。有人对此有任何见解吗?Object.waitsun.misc.Unsafe.park

在这里,您可以看到 JProfiler 通过以下方式报告对象分配Object.wait

在此处输入图像描述

并通过sun.misc.Unsafe.park

(stackoverflow 不允许我嵌入图片)

4

1 回答 1

2

当您使用采样时,调用堆栈只是近似值。

要获得准确的调用堆栈,请使用检测。

于 2013-07-11T20:43:01.417 回答