Android性能优化之Android Device Monitor使用

什么是内存

Android系统为我们APP分配的内存大小是有限的,不同的手机型号、不同的ROM分配的内存大小不一定一样,这里所提到的内存一般是指Android手机的RAM,RAM包含寄存器、堆、栈、静态存储区域、常量池。通常我们所说的Android内存泄漏中的内存指的是其中的堆内存空间,一般来说我们new出来的对象都会存储在堆内存中,这部分内存是由GC进行回收管理的。

垃圾回收机制

垃圾回收器(garbage collection简称GC)可以自动清空堆中不再使用的对象,不用我们手动释放内存,提高了开发效率。在JAVA中对象是通过引用进行使用的,如果没有引用指向该对象,不存在从GC根节点到该对象的引用链,这样的对象称为不可到达(unreachable),那么对于GC来说这个对象就是需要被回收的;反之该对象是从根节点可到达的,那么这个对象就不会被GC回收。

什么是内存泄漏

如果一个无用对象(不需要再使用的对象)仍然被其他对象持有引用,造成该对象无法被系统回收,以致该对象在堆中所占用的内存单元无法被释放而造成内存空间的浪费,这种情况就是内存泄露。

内存泄漏的影响

导致可用内存越来越少,最终可能会发生OOM。
可用内存减少会导致GC被触发,如果频繁触发GC会影响性能造成程序卡顿。

性能优化分析工具

开发过程中应该都会遇到程序性能方面的问题,性能优化的方式有很多种,但是首先需要我们定位是哪一块造成的问题,Android Studio为我们提供了性能分析工具Android Device Monitor

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值