视频:http://www.iqiyi.com/playlist490019502.html
github:https://github.com/kodulf/MemoryLeak
步骤: 点击中间的textview 跳转到第二个activity,然后回到到mainactivity: 就会有内存泄漏了。
背景:
gc 机制,会去对非强应用的数据进行自动的回收,如果是强应用的,那么需要注意
首先要注意,对于弱引用,软引用,虚引用,gc 都是可以直接回收的。
分为强引用,软引用,弱引用,虚引用。
Handler 的内存泄漏: 可以参考https://blog.csdn.net/alex01550/article/details/82744191
demo:
我们需要做的就是发送一个handler 的delay 的消息,然后在这个时间内调到之前的activity
public void startTwentySecondsDelayed(View view) { mHandler.sendEmptyMessageDelayed(1,1000*20); }
发生原因:
对象没有被收回,已经没有用了,
例如静态的view,