gpt4 book ai didi

内存泄漏

转载 作者:搜寻专家 更新时间:2023-11-01 01:58:47 24 4
gpt4 key购买 nike

有没有人使用 Eclipse 内存管理器来检测 java 代码中的内存泄漏?有人可以推荐一个寻找有关使用内存管理器的信息的好地方吗?我在网上看了一些东西,它建议我需要让程序运行直到它崩溃(发生内存不足错误),这将生成一个崩溃报告。然后使用内存管理器打开此报告,检查可能发生内存泄漏的位置。每个人都是这样使用内存管理器的吗?

最佳答案

虽然-XX:+HeapDumpOnOutOfMemoryError可能很有用,我当前使用 Eclipse 内存管理器的工作流程是:

  1. 正常运行程序
  2. 等待内存失控。
  3. 运行 jmap : jmap -dump:format=b,file=dump.hprof <PID>
  4. 在 EMM 中打开 hprof 文件。

我通常从直方图和支配 TreeView 开始工作,看看是否有任何异常,然后从那里向下钻取。

VisualVM 可能很有用,但在处理堆转储时似乎比 EMM 效率低得多(EMM 缓存了大量有关加载堆转储的信息)。 Netbeans Profiler 非常适合获取分配位置和时间分析。

关于内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1638011/

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