Tag: 内存 泄漏

如何找到Java内存泄漏

如何找到Java中的内存泄漏(例如,使用JHat)? 我已经尝试在JHat中加载堆转储以获得基本的外观。 但是,我不明白我应该如何能够找到根引用( ref )或任何它被称为。 基本上,我可以告诉有几百兆哈希表条目([java.util.HashMap $条目或类似的东西),但地图遍布的地方…有没有办法搜索大地图,或者找到大对象树的一般根源? [编辑]好吧,我已经阅读了答案,但我们只是说我是一个便宜的混蛋(这意味着我更感兴趣学习如何使用JHat比支付JProfiler)。 此外,JHat始终可用,因为它是JDK的一部分。 除非JHat没有办法,否则蛮力,但我不敢相信可以这样。 此外,我不认为我将能够实际修改(添加所有地图大小的日志记录)并运行足够长的时间,以便我注意到泄漏。