视觉VM内存泄漏

fly*_*ina 5 java

在使用visualVM检测内存泄漏时,它允许我们使用如下所述的实例视图:

实例视图显示选定类的对象实例。当您从“实例”窗格中选择一个实例时,VisualVM 会在相应的窗格中显示该类的字段以及对该类的引用。在 References 窗格中,您可以右键单击一个项目并选择 Show Nearest GC Root 以显示最近的垃圾回收根对象。

谁能告诉我最近的垃圾收集根对象是什么,以及如何利用这些信息来帮助识别泄漏点。谢谢!

mat*_*t b 5

您可能会发现这本关于垃圾收集的 Sun 书籍/章节很有用,特别是本节将 GC root 列出为:

  • (任何线程的)堆栈上的临时变量
  • 静态变量(来自任何类)
  • JNI 本机代码的特殊引用

换句话说,GC 根是可以通过根持有另一个对象的引用来防止另一个对象被 GC 的变量。

  • 这些链接在某处仍然可用吗?它们在这里被破坏了(指向 Sun 网站)。谢谢。 (2认同)