gpt4 book ai didi

java - 如何在内存不足错误时进行线程转储

转载 作者:行者123 更新时间:2023-12-04 05:08:33 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





how to generate thread dump java on out of memory error

(6 个回答)


9年前关闭。




我知道-XX:+HeapDumpOnOutOfMemoryError将在 OutOfMemoryError 上启用堆转储。

线程转储有类似的东西吗?我需要这个以防服务器上发生错误 - 发生错误时我无权访问进程本身

最佳答案

引发 OutOfMemoryError 的确切执行点非常随机(除非您有一个单线程应用程序),所以我认为在 OOM 上获取线程转储没有太大意义。如果它是“Java 堆空间”类型的 OOM,至少这是正确的,但可能也适用于其他类型的 OOM 错误。

无论如何,看看this older post解决同样的问题。

然而,解决 OOM 错误的更好方法是使用 Eclipse Memory Analyzer Tool检查堆转储。它通过将对象图转换为所谓的 dominator tree 来帮助您识别内存泄漏。 .这种结构揭示了对象之间的保持 Activity 依赖关系,因此很容易识别负责保留最大内存块的对象(参见Shallow vs. Retained Heap)。

关于java - 如何在内存不足错误时进行线程转储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15191999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com