java GC
来源:互联网 发布:与大数据有关的项目 编辑:程序博客网 时间:2024/05/03 22:44
java GC将内存划分为三块,第一块为Permanent Generation,第二块为Old Generation,第三块分为New Generation(又称Young Generation)。其中New Generation包含Eden区和两块Survivor区,如图。
其中PermanentGeneration区存放java中的类与类加载器,此外,对以上各区大小也有一定的设置建议,如Young区为整个堆区的1/4,而Survivor区一般为Young区的1/8.
Old区存放的是Young区的Survivor满后触发Minor GC仍存活的对象,当Eden区满后会将对象存至Survivor区,如果Survivor区仍存不下这些对象,将会把这些对象直接存放至Old区,如果Old区也满了,则会触发Full GC回收整个内存.一般采取mark-compact算法进行内存回收。
Young区分Eden区与两个Survivor区,其中所有全创建的对象都存在Eden区,当Eden区满后会触发Minor GC将Eden区仍然存活的对象复制到Survivor区中,另一个Survivor区中存活的对象也复制到这个Survivor区中,并且保证始终有一个Survivor区是空的.一般采用copying算法进行内存回收。
首先Eden区域满后触发Minor GC将Eden区仍然存活的对象复制到Survivor区中,如图(GC前后对比):
- JAVA GC
- JAVA GC
- Java GC
- java GC
- java gc
- java GC
- java GC
- Java GC
- JAVA GC
- java gc
- Java GC
- JAVA--GC
- Java GC
- java GC
- java GC
- JAVA-GC
- Java GC
- Java GC
- 海量数据处理
- 软件之路:也谈“程序员不超过30岁”
- #define、#define(x)
- c# 实现电脑系统音量的增加,减少,静音等。
- WoW服务器模拟器Ascent网络模块分析
- java GC
- 读v_JULY_v整理笔试题博客有感,整理些答案。
- MTK平台手机进工程模式方法
- PendingIntent
- LSP里氏替换原则----正方形不是长方形和鸵鸟不是鸟的测试程序
- jAva 泛型
- mknod命令
- C语言的大头针
- 敏捷宣言及其背后的12准则