Remembered Set
2019独角兽企业重金招聘Python工程师标准>>>
在CMS中,也有RSet的概念
- 只能做老年代回收器
- 在老年代中有一块区域用来记录指向新生代的引用
- 在进行Young GC时,扫描根时,仅仅需要扫描这一块区域,而不需要扫描整个老年代。
- 这是一种point-out(外部指针)
在G1中RSet的概念,Young GC 阶段:
- 使用point-in(内部指针)来解决
- 标记哪些新生代引用老年代
- 原因在于每次GC时,所有新生代都会被扫描,
- 检测从年轻代指向年老代的对象
- 分区中存放的是卡表
- 如果引用的对象很多,赋值器需要对每个引用做处理,赋值器开销会很大,
- 为了解决赋值器开销这个问题,在G1 中又引入了另外一个概念,卡表(Card Table)
- 默认情况下,每个卡都未被引用。
- 当一个地址空间被引用时,这个地址空间对应的数组索引的值被标记为”0″,即标记为脏被引用,
- 此外RSet也将这个数组下标记录下来
- 如果引用的对象很多,赋值器需要对每个引用做处理,赋值器开销会很大,
转载于:https://my.oschina.net/u/3847203/blog/3041578
Remembered Set相关推荐
- 图解 Remembered Set、Card Table、Write Barrier
前情提要,OopMap + Safe Point + Safe Region 有效提高 GC Roots 枚举的效率.然而,仅靠三者的组合,在实际情况中还是存在着缺陷. 什么是Remembered S ...
- 简单介绍 g1gc Snapshot-At-The-Beginning与Remembered Sets
Snapshot-At-The-Beginning 标记方式有两种方式 增量更新(Increment Update) 初始快照( Snapshot At The Beginning SATB) SAT ...
- Some functions worth remembered in C Library (Updating)
1. <stdio.h> scanf printf putchar() getchar() = fgetc(stdin) gets(buf) = fgets(buf, MAXN, stdi ...
- java 对象被回收的例子_Java对象的后事处理——垃圾回收(二)
1 先谈Finalize() finalize()能做的所有工作,使用try-finally或者其他方式都可以做得更好.更及时,所以笔者建议大家完全可以忘掉Java语言中有这个方法的存在. --< ...
- Chapter 2 Open Book——29
Which left me with nothing to do but try to not look at him-unsuccessfully. 我没什么事情可以做但是我尝试不去看他,但是失败了 ...
- Linux 命令 top 学习总结
本文简介 概要: 学习总结 Linux 下的 top 命令 版本: Debian 5(Lenny), top: procps version 3.2.7 日期: 2010-11 ...
- Shiro源码学习之二
接上一篇 Shiro源码学习之一 3.subject.login 进入login public void login(AuthenticationToken token) throws Authent ...
- c语言作业扩展名通常为什么,C语言的源程序通常的扩展名是( )
C语言的源程序通常的扩展名是( ) 更多相关问题 [C20]A.asB.afterC.untilD.when Although I spoke to her about the matter seve ...
- 英语面试简短问题_用简单的英语解释产品设计
英语面试简短问题 Product design is the process you go through when you conceptualize and build a product. 产品 ...
最新文章
- 2021年大数据ELK(五):Elasticsearch中的核心概念
- 用windows自带压缩备份mysql_Windows下配合计划任务的Mysql定时压缩备份
- iOS 开发 OpenGL 新手入门
- 十六进制字符转二进制字符
- java打印sql表_java程序获得SqlServer数据表的表结构
- 搜狗词库爬虫(2):基础爬虫框架的运行流程
- wpf 控件大小随窗体大小改变而改变
- C++编译单元 内部链接 外部链接
- jenkins-基础配置
- Solr 访问 403 错误
- 【Python系列】之画BD-RATE及码率波动图示例
- Pr 入门教程,如何隔离颜色?
- hive表加载数据的不同方式
- matlab表示网络,Matlab绘制网络
- markdown详细安装教程
- iQOO 10系列来袭 OriginOS原系统强化手机体验
- cpu性能诊断工具turbostat详解
- 广州奶茶饮品培训学校哪家好?广州学奶茶技能要多少钱?
- 动手学ocr·十讲--学习笔记一
- 领域驱动设计实践框架-COLA的解读
热门文章
- RedisTemplate报空指针错误
- 编织信用“大数据”平台 让诚信归位
- 如何让你的flag屹立不倒!
- 计算机函数求娶总和的函数是,奇穴重数究竟靠什么判定?
- Qcom android L ro.sf.lcd_density属性修改
- android通过sd卡升级步骤,安卓手机用储存卡怎么升级具体步骤 ????
- 微商如何做百度引流?微商百度引流怎么做?
- 基于ALSA的WAV播放和录音程序
- 4.4 使用曲线命令修复图像色偏问题 [原创Ps教程]
- (四)WAVE协议的802.11p与802.11a主要区别MAC/PHY