我有一个小型的android应用程序,尝试查找内存泄漏,因此单击了“转储Java堆”,列表上的第一类是FinalizerReference(java.lang.ref)。它有500多个实例,每个实例在另一个FinalizerReference中都带有一个“下一个”和“上一个”。
我知道FinalizerReference来自实现Object.finalize()的对象,但是我的应用程序中没有实现该对象的对象。我如何找出这种泄漏的原因并加以解决?
最佳答案
有关您的问题的更多详细信息,请查看Finalizer
的referent字段。
终结器对象只是扩展的Reference
,因此您可以调查内容。它将为您提供有关完成对象的信息。
根据内容,您将有新的潜在客户。挂起对象的完成过程可能很长。由于只有一个线程来处理所有这些线程,因此您可能会以某种方式完成更多任务。
干杯
关于java - 通过FinalizerReference可能发生的内存泄漏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33666382/