GC(待补全)
2016-09-02 10:53
225 查看
两个最基本的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采用标记清理。
相关文章推荐
- vim-一种简单易懂的django代码补全方式
- HDU 6102 - GCDispower | 2017 Multi-University Training Contest 6
- 转载-慕容小匹夫细说Unity3D(七)——从Draw Call到GC
- GC参数
- VC6.0装了visual assist x回车键不能补全代码的解决方法
- 垃圾收集(GC)中如何确定哪些内存是"垃圾
- js 自动补全
- 输入框自动补全功能
- 使用Bash中Complete自动补全命令
- Java GC、新生代、老年代
- Eclipse 编码自动补全功能
- java的内存管理,是靠GC即垃圾回收程序来实现的,GC其实也是一个程序,是怎么编译、运行的?
- 玩转VIM编辑器-自动补全
- Python Study (06)内存管理GC
- Python自动补全
- [置顶] 使用VisualVM监控远程服务器JVM+原创离线安装VisualGC插件
- GC-垃圾回收
- 详解Java GC的工作原理+Minor GC、FullGC
- java gc的工作原理、如何优化GC的性能、如何和GC进行有效的交互
- Debian sudo自动补全