java - 是否可以将 'see' 对象图用于垃圾收集?

标签 java memory-management memory-leaks garbage-collection

我有一个内存泄漏的 Java 应用程序。我知道哪些对象在垃圾回收期间没有被释放,但我无法弄清楚是什么在引用它们。

JVM 内部持有的对象图是否有某种可见性?

是否有可能找出哪些对象引用了另一个对象?

最佳答案

在最基本的层面上,您可以使用命令 jhat 和 jmap 从正在运行的 Java 进程中读取堆文件,然后对其进行处理 - 它会在本地端口上启动一个小型 Web 服务器。它不是很容易阅读,但您不必购买分析器即可使用它。

关于java - 是否可以将 'see' 对象图用于垃圾收集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1238629/

相关文章:

插入时Python mysql内存泄漏

java - 两个 Java 字符串在不相等时表示它们相等

java - Web 服务传输异常 : Not Found [404]

java - 在 javafx 2 中将 Rectangle 传递给 setContent 时我做错了什么?

c - 如何在 C 中以可移植的方式管理内存对齐和通用指针算术?

memory-management - 在 Fortran 中使用析构函数释放内存

android: LruCache 返回空

java - 递归绘制

c++ - 无法在使用 malloc/placement new 创建的类上调用虚函数

c - 从 libc 中的函数返回的字符串分配在哪里?