Android面试100问--内存泄露问题

it2022-05-09  37

3.Handler内存泄露问题

产生内存泄露原因:静态内部类持有外部类的匿名使用,导致在用户退出当前Activity时,handler内部的一些耗时操作还在运行,从而导致activity还被handler做引用,最终导致activity还存留在堆栈中,没有被回收,导致内存泄露。

解决:1.handler内部持有外部activity的弱引用。              2.把handler改为静态内部类。              3.在activity的onDestory方法内掉用mHandler.removeCallBack()。            (只能90%的解决) ---------------------  作者:LQ-刘强  来源:  原文:https://blog.csdn.net/qq_33429583/article/details/79942973  版权声明:本文为博主原创文章,转载请附上博文链接!

 

 

另一篇 https://www.sohu.com/a/165294497_617676

GCRoot分析方法


最新回复(0)