首页 > 编程语言 > 详细

《深入理解java虚拟机》读书笔记——垃圾收集与内存分配策略

时间:2018-09-05 00:03:59      阅读:189      评论:0      收藏:0      [点我收藏+]

可回收判定两种算法
引用计数法(Reference Counting):引用为0时可回收。
可达性分析法(Reachability Analysis): 从GCRoots对象到这个对象不可达。
GCRoots:
  • 本地变量表引用的对象;
  • 方法区中静态属性引用的对象
  • 方法区中常量引用的对象
  • Native方法栈引用的对象。
个人理解,即在生命周期内不会变得不可达的对象。
 
垃圾收集算法
复制算法,一般用于新生代的minor gc,效率较高;
标记-整理算法,用于老年代的full gc,效率较低。
梳理对象的生命周期:
  1. 在新生代 Eden区和一个Survivor区(from survivor)分配内存
  2. 标记可回收对象
  3. 将存活对象复制到另一个Survivor区(to survivor),不够用则将存活周期较长的对象复制到老年代
  4. 清空Eden区和from survivor区(minor gc)
  5. 如果在写老年代时,发现老年代不够用,则触发一次full gc 

《深入理解java虚拟机》读书笔记——垃圾收集与内存分配策略

原文:https://www.cnblogs.com/night1989/p/jvm.html

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