关于收集器采用的算法
2016-08-28 09:51
176 查看
两个最基本的java回收算法:复制算法和标记清理算法
复制算法:两个区域A和B,初始对象在A,继续存活的对象被转移到B。此为新生代最常用的算法
标记清理:一块区域,标记要回收的对象,然后回收,一定会出现碎片,那么引出
标记-整理算法:多了碎片整理,整理出更大的内存放更大的对象
两个概念:新生代和年老代
新生代:初始对象,生命周期短的
永久代:长时间存在的对象
整个java的垃圾回收是新生代和年老代的协作,这种叫做分代回收。
P.S:Serial New收集器是针对新生代的收集器,采用的是复制算法
Parallel New(并行)收集器,新生代采用复制算法,老年代采用标记整理
Parallel Scavenge(并行)收集器,针对新生代,采用复制收集算法
Serial Old(串行)收集器,新生代采用复制,老年代采用标记清理
Parallel Old(并行)收集器,针对老年代,标记整理
CMS收集器,基于标记清理
G1收集器:整体上是基于标记清理,局部采用复制
综上:新生代基本采用复制算法,老年代采用标记整理算法。cms采用标记清理。
复制算法:两个区域A和B,初始对象在A,继续存活的对象被转移到B。此为新生代最常用的算法
标记清理:一块区域,标记要回收的对象,然后回收,一定会出现碎片,那么引出
标记-整理算法:多了碎片整理,整理出更大的内存放更大的对象
两个概念:新生代和年老代
新生代:初始对象,生命周期短的
永久代:长时间存在的对象
整个java的垃圾回收是新生代和年老代的协作,这种叫做分代回收。
P.S:Serial New收集器是针对新生代的收集器,采用的是复制算法
Parallel New(并行)收集器,新生代采用复制算法,老年代采用标记整理
Parallel Scavenge(并行)收集器,针对新生代,采用复制收集算法
Serial Old(串行)收集器,新生代采用复制,老年代采用标记清理
Parallel Old(并行)收集器,针对老年代,标记整理
CMS收集器,基于标记清理
G1收集器:整体上是基于标记清理,局部采用复制
综上:新生代基本采用复制算法,老年代采用标记整理算法。cms采用标记清理。
相关文章推荐
- JVM垃圾收集算法(复制算法)----关于 新生代老年代
- 关于JVM的几个垃圾收集算法思想
- C#中国身份证验证 特别收集一些关于身份证验证的算法C#版
- jvm垃圾回收算法(并发垃圾收集器(CMS)为什么没有采用标记整理-算法来实现,而是采用的标记-清除算法?)
- VC学习资料收集(7):关于《连连看》的算法
- 并发垃圾收集器(CMS)为什么没有采用标记-整理算法来实现?
- Jvm(26),回收策略-----分代收集算法(hotsopt采用的算法)
- 关于JVM的几个垃圾收集算法思想
- 收集到的--关于算法很好的网址
- 关于POS操作的一些文章收集链接
- 长期以来收集的关于设计的网址,贴出来分享
- 关于sql server全文检索的一些资料收集2
- 关于猫和老鼠的算法
- 关于狗、鸡、白菜过河的算法
- VC学习资料收集(2):关于数据类型转换
- 关于分解质因数的一个算法
- 关于sql server全文检索的一些资料收集2
- 关于《我从教育网收集了200多篇关于组态软件和人机界面软件开发、应用的文章,想要的朋友给我发邮件呀》的再次申明
- [梦里原创]关于猫和老鼠的问题(程序算法)
- 关于转换的一些收集