Android 内存优化 内存泄漏

内存抖动

内存抖动是由于短时间内有大量对象进出新生区导致的,内存忽高忽低,有短时间内快速上升和下落的趋势,分析图呈锯齿状。
它伴随着频繁的GC,GC 会大量占用 UI 线程和CPU 资源,会导致APP 整体卡顿,甚至有 OOM 的可能。

GC时 STW stop the world

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

内存泄漏

程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费。
在这里插入图片描述

引用计数法

在对象中添加一个引用计数器,每当有一个地方引用它,计数器就加1,当引用失效时,计数器减1.
python在用,但主流虚拟机没有使用,因为存在对象相互引用的情况,这个时候需要引入额外的机制来处理,这样做影响效率

可达性分析

进程与JVM内存模型

每个应用程序都有自己单独的JVM实例。单个进程的内存泄漏、OOM不会影响到其他程序。
在这里插入图片描述
在这里插入图片描述

C++ 内存泄漏

C++没有类似于JVM的实例,其内存泄漏会影响所有的应用程序,且只有操作系统重启时,此内存泄漏才会修复。

Android应用程序内存大小

Android中从zygote进程fork出子进程时会有限定的内存空间大小。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学知识拯救世界

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值