计算机科学与探索 ›› 2014, Vol. 8 ›› Issue (8): 978-988.DOI: 10.3778/j.issn.1673-9418.1402034
于 巧1,姜淑娟1+,王兴亚1,鞠小林1,2,董庆杰3
YU Qiao1, JIANG Shujuan1+, WANG Xingya1, JU Xiaolin1,2, DONG Qingjie3
摘要: 程序运行过程中一些不再被使用的对象未及时释放会引发内存泄漏问题,泄漏对象经过长期累积会降低系统性能,甚至导致系统崩溃。针对Java程序中的内存泄漏问题,提出了一种内存泄漏对象检测与度量方法。通过动态跟踪源程序的执行过程,周期性记录堆栈信息,并分析堆中可疑的泄漏对象。定义内存泄漏度计算方法,度量不同对象对程序泄漏的影响程度,从而确定产生泄漏的对象。最后选取两个开源程序进行验证,并与两种现有方法进行对比,结果表明该方法的泄漏检测率较高。