即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

Java虚拟机的垃圾回收机制的文字描述

编程语言 qq_36006553 11℃ 0评论

这里写图片描述

JVM分代垃圾回收机制:


JVM的内存划分为堆(heap)和堆栈(stack)。堆栈主要用于存储方法参数,局部变量等。堆主要用于存放对象的内存,对象的创建和释放、垃圾回收就在这里进行。


在JVM中,堆栈空间划分为年轻代(Young Generation)和年老代(Old Generation),又将年轻代分为Eden区、From区和To区,新建对象总是在Eden区中进行,如果Eden空间已满,就触发一次Young GC,将还在使用的对象复制到From区,这样整个Eden区就变成未使用状态,可供继续创建对象,当Eden区再次用完,在触发一次Young GC,将Eden区和From区中还在被使用的对象复制到To区,下一次Young GC把Eden区和To区的还在被使用的对象复制到From区。经过多次Young GC,某些对象在From区和To区多次复制,如果超过了某个阈值对象还未被释放,则将该对象复制到Old Generation。如果Old Generation空间也用完,那么会触发Full GC。Full GC对程序影响极大。所以我们需要设置合理的Young Generation和Old Generation大小,以减少Full GC。

转载请注明:CodingBlog » Java虚拟机的垃圾回收机制的文字描述

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情