当前位置: 首页 > news >正文

关于三色标记算法的理解

三色标记算法是一种垃圾标记的算法,用于cms和g1。
它将对象分为3种颜色:
1.白色对象:未被标记的对象
2.灰色对象:自身被标记,引用的其它对象还没被标记
3.黑色对象:自身以及所引用的对象都被标记完

标记过程:
初始状态所有对象都是白色的,
从gc roots出发,将gc roots都标记成灰色,然后递归扫描所有灰色对象,当灰色对象的所有引用都处理完的时候,将灰色对象标记成黑色;最终所有存活的对象都会被标记成黑色,白色对象就是垃圾,会被清除。

会产生漏标的问题:
漏标产生的条件:黑色对象指向了白色对象,同时灰色对象指向白色对象的引用消失。
解决方法有两种:
在这里插入图片描述


http://www.mrgr.cn/news/63444.html

相关文章:

  • 【计算机网络】窥探计网全貌:说说计算机网络体系结构?
  • 备战蓝桥杯 队列和queue详解
  • JVM生产环境常用参数配置及调优建议
  • 西电-神经网络基础与应用-复习笔记
  • .NET中的框架和运行环境
  • 计算机网络(二)——物理层和数据链路层
  • Git 子模块初始化和管理
  • 【Python游戏开发】猜数字游戏
  • Anolis(龙蜥)系统介绍
  • Linux中部署PostgreSQL保姆级教程
  • 二叉树算法题
  • 数据泄露后的安全重构:文件安全再思考
  • Java-实现重试机制并防止短时间内多次尝试
  • 2024网盘市场扫描 细则功能逐一较量
  • 使用 fzf 实现文件快速查找、打开及执行
  • Windows SEH异常处理讨论
  • Tile38命令-【Keys】
  • 卡尔曼滤波-应用白话
  • 在JAVA中使用Paho MQTT客户端
  • ArkTS基础
  • Excel函数学习记录
  • Matlab中国三大自然分区
  • 智慧园区有哪些优势
  • Java解析word中的表格或者文本
  • 揭秘云计算 | 1、云从哪里来?
  • Redis(2):内存模型