我正在使用 Eclipse + MAT 插件。我可以看到一个 .hprof 文件堆历史记录,我拍摄了我的 Java 应用程序的两个快照。我希望当我比较两个堆转储时,我可以确定哪些对象实例增加了很多,以便我可以识别内存泄漏的可能性。
netbean 能做到吗?
类名:在应用中实例化的类,占用内存
对象:在其他堆转储上方或下方存在多少类实例的计数。
浅堆:给定类在其他堆转储上方或下方的内存中占用的字节数。
由于 MAT 默认按降序排序,因此我建议切换Objects和Shallow Heap列的顺序,以查看每个方向上每个列的顶部异常值。
通常,您应该忽略纯 Java 类,如字符串、数组和映射,并专注于您的应用程序定义的类。
可以做到。请参阅IBM 博客。
基本上你打开两者,然后在直方图中有一个额外的按钮(最右边的那个)来比较它。