内存泄露的危害

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内存泄露的危害相关的知识,希望对你有一定的参考价值。

参考技术A 内存泄露定义

进程中某些对象没有使用价值了,但是他们却可以直接或间接的引用gc roots导致无法被gc回收。当不用的对象占据着内存空间时,使得实际可使用的内存变小,形象的说法就是发生内存泄露了。

危害

1.频繁GC:安卓系统分配给单个应用的内存资源都是有限的 国内存泄露导致其他组件可用的内存变少后,一方面会使得gc的频率加剧,再发生gc的时候,所有进程都必须等待 gc的频率越高,用户越容易感到应用卡顿。另一方面内存变小,可能使得系统额外分配给该app一些内存,而影响整个系统的运行情况。

2.运行崩溃问题:一旦内存不足以分配某些需要的内存,将会导致崩溃,造成体验差。偶尔也会遇到一些机型出现OOM的问题,大多数情况下和内存泄露有关。

内存溢出与内存泄露

内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory。

内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间。一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。

memory leak会最终会导致out of memory!


内存泄露的迹象:老年代每次垃圾回收的时候,总是不能全部回收,一次比一次占用的内存多。


以上是关于内存泄露的危害的主要内容,如果未能解决你的问题,请参考以下文章

内存泄露与内存溢出

Android 内存泄露

内存相关内容

内存泄露与内存溢出的区别

内存溢出和内存泄露的区别

Java:内存泄露和内存溢出