首页 > 其他 > 详细

垃圾回收(年轻带、老年代)

时间:2018-10-07 11:59:03      阅读:188      评论:0      收藏:0      [点我收藏+]

         年轻代:当对象刚刚创建的时候我们的对象是存放在even内存空间的,当这儿存满了,CG就会调用Minor GC来清理无用的对象,并将剩下的对象放入到servicer1区里面,当第二次even满的时候,我们就在此调用MinorGC,清理even区,和有对象的servicer区并将它们有用的对象放在service(n+1)区,当service15区中也还有幸存的对象的时候我们就将这些对象放在old区,它们就是老年代了。

        老年代:当old区也存放对象占用的空间达到一定比例的时候也会调用MinorGC,清理无用的对象;当old区域存满了的话,它就会调用fullGC,他就会整个清理(代价很高)。

        开发中容易出现内存溢出常见的现象:

               1、IO流未关闭

               2、创建了大量无用的对象。

               3、监听器使用不当

              4、静态集合类使用不当

垃圾回收(年轻带、老年代)

原文:https://www.cnblogs.com/ztcen/p/9749688.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!