首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在java中捕获没有数据的堆转储

如何在java中捕获没有数据的堆转储
EN

Stack Overflow用户
提问于 2019-01-19 14:08:01
回答 1查看 114关注 0票数 0

我已经为我的java程序设置了-Xmx100g (我必须这样做),现在我怀疑程序中存在内存泄漏,在每次迭代中捕获和加载100 by的堆转储需要花费两个多小时(当我更改代码中的某些内容并希望通过堆转储分析来检查是否修复了内存泄漏时)。堆的大部分是数据(例如,其中一半是文本文件内容),在分析堆时,我真的不关心对象内容。

那么,我如何才能跳过堆数据的转储,让尽可能小的堆转储用于内存泄漏分析(只是对象的元数据,而不是它们的值)?

EN

回答 1

Stack Overflow用户

发布于 2019-01-19 19:03:54

如果堆转储时间太长,请使用-Xmx...减小堆大小。

如果你有一个内存泄漏,你是否需要一个100 to的堆来寻找证据是值得怀疑的。所以减少它吧。

那么,我如何才能跳过堆数据的转储,让尽可能小的堆转储用于内存泄漏分析(只是对象的元数据,而不是它们的值)?

我认为这是不可能的。此外,在许多情况下,正是值(例如引用链)允许您/分析器识别泄漏对象的来源。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54264531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档