Dalvik和ART的GC区别

Dalvik和ART的GC区别(转载)

小结笔记

Dalvik中GC的问题如下

  1. GC时挂起所有线程
  2. 大而连续的空间紧张
  3. 内存碎片化严重

ART

  1. 在ART中标记不需要挂起所有程序的线程:在ART中GC会要求程序在分配空间的时候标记自身的堆栈,这个过程非常短,不需要挂起所有程序的线程(解决问题1)
  2. 提供 LOS :large object space 专供Bitmap使用,从而提高了GC的管理效率和整体性能(解决问题2)
  3. ART里有moving collector来压缩活动对象,使得内存空间更加紧凑 (解决问题3)

Google在ART里对GC做了非常大的优化,从演示的数据里看,内存分配的效率提高了10倍,GC的效率提高了2-3倍。

  • 通过标记时机的变更使中断和阻塞的时间更短;
  • 通过LOS解决大对象的内存分配和存储问题;
  • 通过moving collector来压缩内存,使内存空间更加紧凑,从而达到GC整体性能的巨大提升。

google官网:调试 ART 垃圾回收

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值