本文链接: https://blog.youkuaiyun.com/feather_wch/article/details/131545501
云笔记链接: https://note.youdao.com/s/YcbbhAYK
内存抖动
1、内存抖动是什么?
- 内存可以正常回收
- 但是内存频繁分配和回收,导致频繁GC,系统卡顿(STW)==>CMS(2次STW)
- 会出现碎片,可能导致OOM(没办法分配连续内存空间)
2、String拼接和内存抖动
- String的+=操作,会被编译器优化为(new StringBuilder().append(result).append(args[i]))
- 虽然优化为StringBuilder但是会导致StringBuilder的大量创建(看Java字节码)
public void test(String[] args){

本文详细探讨了Android应用中的内存抖动问题,包括其原因、影响和如何通过对象池进行优化,特别是针对Glide对象池的实现进行了深入分析。同时,文章也介绍了内存泄漏的监控工具和典型场景,如动画和透明Activity导致的泄漏,并讲解了ActivityClientRecord在内存管理中的作用。给出了避免内存抖动的实践建议。
最低0.47元/天 解锁文章
972

被折叠的 条评论
为什么被折叠?



