Android内存泄漏

2019-09-28  本文已影响0人  醒醒Coco

内存泄漏(Memory Leak):

程序中动态分配的堆内存,由于某种原因,程序未释放。造成系统内存的浪费,导致程序运行慢甚至系统崩溃。

与C++的内存不同,C++的内存泄露是由于分配了内存给某程序但是又没有回收造成的。
Java的内存泄露则是引用了一些垃圾对象,意思就是说程序引用了某些对象,但是又从来没有使用过。

所以说javac/c++更“高级”,但是java的垃圾回收机制也没有那么智能,因为它在执行垃圾回收时需要根据一个标准去判断这块内存是否是垃圾,当这块垃圾不符合作为垃圾的标准时,GC就不会去回收它,这就产生了内存泄漏,下面开始进入正题。

检测内存泄漏

adb shell dumpsys meminfo (pid)

反复地进入退出需要测试的目标activity,如果发现activity数量一直在增长,那么内存泄露一定是发生了。


内存泄漏检测

定位内存泄漏的原因

图片.png 图片.png
上一篇 下一篇

猜你喜欢

热点阅读