美文网首页
Android内存基础——内存抖动

Android内存基础——内存抖动

作者: CoorChice | 来源:发表于2016-10-27 15:27 被阅读5293次

个人博客CoorChice,https://chenbingx.github.io/ ,最新文章将会首发CoorChice的博客,欢迎探索哦 !
同时,搜索微信公众号CoorChice,或扫描文章末尾二维码,可以关注我的微信公众号。同期文章也将会优先推送到微信公众号中,以提醒您有新鲜文章出炉。

参考资料

Google官方讲解视屏

背景介绍

Java内存管理机制中我提到过内存抖动会引起频繁的GC,从而使UI线程被频繁阻塞,导致画面卡顿。这次我们就聊聊内存抖动。

需要避免内存抖动

内存抖动是由于短时间内有大量对象进出Young Generiation区导致的,它伴随着频繁的GC。通常存在内存抖动时,我们可以在Android StudioMonitors中看到如下场景:

内存抖动图
下面是避免发生内存抖动的几点建议:
  • 尽量避免在循环体内创建对象,应该把对象创建移到循环体外。
  • 注意自定义View的onDraw()方法会被频繁调用,所以在这里面不应该频繁的创建对象。
  • 当需要大量使用Bitmap的时候,试着把它们缓存在数组中实现复用。
  • 对于能够复用的对象,同理可以使用对象池将它们缓存起来。

总结

总之,因为内存抖动是由于大量对象在短时间内被配置而引起的,所以我们要做的就是谨慎对待那些可能会大量创建对象的情况。

CoorChice的公众号

相关文章

  • Android内存基础——内存抖动

    个人博客CoorChice,https://chenbingx.github.io/ ,最新文章将会首发Coor...

  • Android内存抖动——检测、常见场景、处理

    内存抖动 介绍:内存抖动是Android性能优化中内存优化的一种情况,主要是由于频繁的对象创建导致内存抖动,最终可...

  • Android性能优化之内存篇

    android的内存优化一般从以下几个方面考虑: 内存泄漏 内存抖动 Bitmap 代码质量优化 内存泄漏 内存泄...

  • Android内存管理(二)

    Android内存性能主要包括内存泄漏,内存抖动,内存持续增长(但GC后会下降),内存占用过大等问题。 Andro...

  • Android 性能优化&内存篇

    本篇主要讲解android内存性能优化之检测方案。内存性能主要包括内存泄漏, 内存抖动, 内存持续增长(但GC后会...

  • Android 性能优化-内存抖动

    本文将了解内存抖动是什么以及内存抖动发生的原因及常见解决办法 内存抖动是什么 内存抖动:内存抖动实际上就是内存频繁...

  • 「性能优化4.1」内存优化的三个方面及工具

    内存优化的三个方面 APP 内存优化一般从 内存抖动,内存泄露,内存溢出这三个方面进行分析。 内存抖动 内存抖动是...

  • android 内存泄漏分析与优化(二)

    内存抖动、内存溢出、内存泄漏 内存抖动在极短的时间内,分配大量的内存,然后又释放它,这种现象就会造成内存抖动。典型...

  • App内存优化

    1.内存优化介绍及工具选择 2.Android内存管理机制 3. 内存抖动解决实战 4. 内存泄露解决实战 hpr...

  • android内存泄露

    参考内存泄露从入门到精通三部曲之基础知识篇Android 内存泄漏总结Android内存泄漏研究Android内存...

网友评论

      本文标题:Android内存基础——内存抖动

      本文链接:https://www.haomeiwen.com/subject/xlqsuttx.html