内存泄漏(在 Java™ 中,经常由于对象不恰当地占有引用而引起的)会降低性能并最终导致程序崩溃。“概要分析和记录”透视图中包括用于分析应用程序中的内存使用情况和检测这些泄漏的视图。
下列视图可用于内存泄漏分析:
找出一个泄漏之后,可以使用 Probekit 设计定制探针来调查可能正在泄漏的特定对象。
要快速找出疑似泄漏对象,通过使用“内存泄漏分析”概要分析集进行概要分析来执行内存泄漏分析。还可以通过使用“内存分析”概要分析集进行概要分析来检查内存使用情况;可以使用“对象引用图”、“对象引用”和“对象详细信息”视图浏览此数据,但是不能使用该数据来生成疑似泄漏对象的列表。
内存泄漏分析使用高级算法来根据两个堆转储的比较结果找出潜在的内存泄漏。可以将概要分析配置定义为允许您手工捕获堆转储,也可以定义为在概要分析集中指定的时间自动捕获堆转储。
要分析泄漏:
现在可以修改您的代码以清除不再有用的引用,以便垃圾收集器可以收集不需要的对象。再次对应用程序进行概要分析,以验证是否已修正该泄漏并检测其它泄漏。
有关更多信息,请阅读分析内存泄漏。
具有“基本内存分析”概要分析类型的“内存分析”概要分析集使您能够收集对象引用和查看堆转储。请注意,可以在“对象引用图”、“对象引用”和“对象详细信息”视图中查看该数据,但是不能使用它来生成疑似泄漏对象的列表。
要调查内存使用情况: