Android垃圾回收机制

Android垃圾回收机制,第1张

概述一.垃圾回收机制1. 新生代(YoungGeneration):1) 大多数新建的对象都位于Eden区2)当Eden区被对象填满时,就会执行minorGC,并把所有存活下来对象转移到其中一个survivor区3)survivor space:s0,s1两个区域,存放每次垃圾回收后存活的对象4)minorGC同样会检查survivor 区,这

一. 垃圾回收机制

1. 新生代(Young Generation):

1)   大多数新建的对象都位于Eden区

2) 当Eden区被对象填满时,就会执行minor GC,并把所有存活下来对象转移到其中一个survivor区

3) survivor space:s0, s1 两个区域,存放每次垃圾回收后存活的对象

4) minor GC同样会检查survivor 区,这样一段时间内,总会有一个空的servivor区

2.老生代(old Generation)

1)  存放长期存活的对象和经过多次minor GC后依然存活下来的对象

3. 永生代(Permanent Generation)

1) 存放方法区,存放应用程序类和方法,静态变量,final类型的常量、属性和方法信息

 

 

 

 

 

二. GC的触发条件

GC分为minor GC 和 major GC 

minor GC从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC

major GC 是清理老年代永生代

1 minor GC触发条件

1)当Eden区满时,触发minor GC

2 major GC 触发条件:

1)老生代空间不足

2)永生代空间不足

3)通过minor GC后进入老生代的平均大小大于老生代可用内存

4) 由Eden区,from Space区向 to Space区复制时,对象大小大于to Space可用内存,则把该对象传入老生代,且老生代的可用内存小于该对象大小

 

总结

以上是内存溢出为你收集整理的Android垃圾回收机制全部内容,希望文章能够帮你解决Android垃圾回收机制所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1071959.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存