JVM学习笔记3--垃圾回收
2017-01-17 00:16
246 查看
一、对象从生存到死亡的步骤
1、是否有GCRoots相连接的引用链
2、是否有执行finalize()方法
两者有一个就不会被回收
二、垃圾回收算法
1、标记-清除算法
2、复制算法
Fden:Survivor:Survivor=8:1:1
将8Fden和1Survivor存活的对象存进1Survivor中
3、标记-整理算法
存活的对象向一端移动,清除端边界以外的内存
4、分代收集算法
新生代:复制算法
老年代:标记-清理算法或者标记-整理算法
三、HotSpot虚拟机中的垃圾收集器
1、Serial:单线程,需要停止其他线程,适用于Client模式下的虚拟机,使用于新生代的复制算法
2、ParNew:并行的多线程,适用于Server模式下的虚拟机,适用于新生代的复制算法
3、Paraller Scavenge:同上,区别是”吞吐量优先“
4、Serial Old:单线程,适用于老年代的标记-整理算法
5、Paraller Old:多线程,适用于老年代的标记-整理算法
6、CMS:适用于标记-清除算法
7、G1、、
1、是否有GCRoots相连接的引用链
2、是否有执行finalize()方法
两者有一个就不会被回收
二、垃圾回收算法
1、标记-清除算法
2、复制算法
Fden:Survivor:Survivor=8:1:1
将8Fden和1Survivor存活的对象存进1Survivor中
3、标记-整理算法
存活的对象向一端移动,清除端边界以外的内存
4、分代收集算法
新生代:复制算法
老年代:标记-清理算法或者标记-整理算法
三、HotSpot虚拟机中的垃圾收集器
1、Serial:单线程,需要停止其他线程,适用于Client模式下的虚拟机,使用于新生代的复制算法
2、ParNew:并行的多线程,适用于Server模式下的虚拟机,适用于新生代的复制算法
3、Paraller Scavenge:同上,区别是”吞吐量优先“
4、Serial Old:单线程,适用于老年代的标记-整理算法
5、Paraller Old:多线程,适用于老年代的标记-整理算法
6、CMS:适用于标记-清除算法
7、G1、、
相关文章推荐
- JVM学习笔记(三)------内存管理和垃圾回收 .
- JVM学习笔记(三)------内存管理和垃圾回收
- JVM学习笔记之垃圾回收算法
- JVM垃圾回收机制学习笔记
- JavaWeb学习笔记—JVM的垃圾回收机制(转载)
- JVM学习笔记(三)------内存管理和垃圾回收
- [转]JVM学习笔记(三)------内存管理和垃圾回收
- JVM学习笔记二:GC 垃圾回收
- JVM学习笔记之内存分配与垃圾回收
- JVM学习笔记-内存管理及垃圾回收
- jvm学习笔记三--内存管理和垃圾回收
- JVM学习笔记----内存管理和垃圾回收
- JVM学习笔记(六)--- 垃圾回收面临的问题
- JVM学习笔记(三)------内存管理和垃圾回收
- (转载)JVM学习笔记(三)------内存管理和垃圾回收
- JVM学习笔记(三)------内存管理和垃圾回收
- JVM学习笔记(3)------内存管理和垃圾回收
- JVM学习笔记(1、 基本结构;2、Java代码编译和执行的整个过程3、内存管理和垃圾回收 4、 内存调优 )
- 《C#入门到精通》学习笔记 -- 垃圾回收机制
- JVM学习内存管理和垃圾回收