内存泄露系列文章(一) - 内存泄露原因及影响
2018-06-22 本文已影响85人
世道无情
前言
内存泄露系列文章
内存泄露系列文章(一) - 内存泄露原因及影响
内存泄露系列文章(二) - 内存泄露监测及分析
内存泄露系列文章(三) - 内存泄露解决方案
1. 内存泄露原因
当一个对象不再被使用,在回收时另一个正在使用的对象持有它的引用导致本该被回收的对象不能被回收而留在堆内存中,就产生了内存泄露。
说白了,该对象无法被回收的原因就是被一个生命周期更长的对象引用了。
其实内存泄露就是一句话,生命周期较长的对象持有生命周期较短的引用。
2. 内存泄露影响
1>:Android系统给每个应用程序分配内存有限,如果app超过系统分配给它的内存,造成OOM内存溢出;
2>:大量的内存泄露,引起Crash,可能会频繁GC(频繁的垃圾回收);
3>:GC都是耗时的操作,导致app非常卡顿、手机卡顿。