jvm笔记

类的生命周期:加载、验证、准备、解析、初始化、五个阶段。

 

JVM内存结构主要有三大块:堆内存、方法区和栈。

堆内存是JVM中最大的一块由年轻代和老年代组成

年轻代内存又被分成三部分,Eden空间、From Survivor空间、To Survivor空间,默认情况下年轻代按照8:1:1

 

java GC

  我们的内存垃圾回收主要集中于 java 堆和方法区中.

对象存活判断:

  1:引用计数:每个对象有一个引用计数属性,新增一个引用时计数加1,引用释放时计数减1,计数为0时可以回收。此方法简单,无法解决对象相互循环引用的问题。

  2:可达性分析(Reachability Analysis):从GC Roots开始向下搜索,搜索所走过的路径称为引用链。当一个对象到GC Roots没有任何引用链相连时,则证明此对象是不可用的。不可达对象。

垃圾收集算法

  1:标记-清除算法

你可能感兴趣的:(jvm笔记)