JVM的垃圾回收机制

来源:互联网 发布:数据分析职业发展 知乎 编辑:程序博客网 时间:2024/05/09 17:20

GC分代回收机制简单描述:

这里写图片描述

简单来说JVM内存分为了新生代(Young Generation)和老生代(Old Generation)。新生代分为了伊甸园区(Eden)和两个幸存区(Survivor)。当对象刚被创建的时候是被放到伊甸园区,当Eden区被对象填满时,就会执行Minor GC,经过一次回收之后,如果伊甸园区中的对象的引用不存在了,这个对象就会被解析回收;如果经过一次回收依然存在,则将该对象挪到幸存区。幸存区的扫描频率略低于伊甸园区。如果经过非常多次扫描,对象在幸存区中依然存在,那么这个时候,这个对象会被挪到老生代中。老生代的Minor GC频率远远低于新生代。老生代的对象一旦发生回收,可能会导致程序的卡顿甚至崩溃。发生在新生代的回收---Minor GC发生在老生代的回收--major gc永久代存放JVM运行时使用的类。永久代同样包含了Java SE库的类和方法。永久代的对象在full GC时进行垃圾收集。

转载文章: http://www.importnew.com/14086.html

原创粉丝点击