系统相关
首页 > 系统相关> > 使用finalize进行Java内存泄漏检测

使用finalize进行Java内存泄漏检测

作者:互联网

好的,我已经在网上阅读了很多关于finalize()方法的文章以及我们无法真正依赖它的事实……

对,很清楚(我猜)

但是当内存泄漏发生时,在VisualVM内部越来越深之前,我可以使用finalize方法作为主要的调试工具吗?

(一个很小的日志消息,比如finalize中的“object released”和构造函数中的“object created”)

解决方法:

您希望跟踪被保留的对象,而不是那些被释放的对象(这是finalize显示给您的).更重要的是,您想知道为什么保留对象,即保留它们的引用路径.我建议使用VisualVM作为开始,如果堆很大或问题不明确,可能会使用商业分析器.

当资源尚未确定清除时,我使用finalize()进行日志记录.也就是说它应该已经接近()了.

标签:finalizer,java,debugging,memory-leaks
来源: https://codeday.me/bug/20190831/1776076.html