Java千百问_07JVM架构(010)_什么是老生代的标记算法

Posted 幽灵雾

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java千百问_07JVM架构(010)_什么是老生代的标记算法相关的知识,希望对你有一定的参考价值。

点击进入_更多_Java千百问

1、什么是老生代的标记算法

了解堆内存看这里:java堆内存是什么样的
了解java垃圾回收看这里:java垃圾回收机制是什么
所谓标记算法(Mark),分为多种,最简单直观的即标记-清除算法(Mark-Sweep)。即将认定为可回收的内存做一个标记,然后统一将被标记的清理,算法图解如下:

这里写图片描述

算法过程:
1. 先判定对象是否可回收,对其标记
2. 统一回收(简单地删除对垃圾对象的内存引用)。

标记-清除算法十分简单直观,且容易实现和理解。但是有一个很严重的问题,

以上是关于Java千百问_07JVM架构(010)_什么是老生代的标记算法的主要内容,如果未能解决你的问题,请参考以下文章

Java千百问_07JVM架构(006)_java堆和栈有什么区别

Java千百问_07JVM架构(008)_java垃圾回收机制是什么

Java千百问_07JVM架构(015)_XmnXmsXmxXss有什么区别

Java千百问_07JVM架构(005)_显示内存管理有什么弊端

Java千百问_07JVM架构(012)_fullGCminorGCmagorGC有什么区别

Java千百问_07JVM架构(001)_java内存模型是什么样的