Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >2020-11-21:java中,什么是跨代引用?

2020-11-21:java中,什么是跨代引用?

原创
作者头像
福大大架构师每日一题
修改于 2020-11-23 03:35:50
修改于 2020-11-23 03:35:50
4350
举报

福哥答案2020-11-21:

答案来自此链接:

跨代引用常出现与 CMS 分代收集时需要使用可达性分析判断对象是否存活,JVM将堆内存分为 年轻代、老年代、永久代||元空间,跨代引用就是年轻代对象可能会引用老年代或者永久代的实例对象,判断是否可达实现的话,是依据卡表记录对应的应用信息而 卡表和卡页存在对应关系,相当于一个记录标记这样再需要清除垃圾对象时,只需要扫描老年代的卡页记录即可,而不用扫描整个老年代。

PS:在没有分代的ZGC中,不存在跨代引用哦。


评论

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
美团 2面:为什么 G1能够替代 CMS回收器?看完这篇你就懂了!
在 《肝了一周,彻底弄懂了 CMS收集器原理,这个轮子造的真值! 》这篇文章中, 详细地分析了 CMS收集器,刚好这两天看了一道美团 2面的题目:G1 为什么能替代 CMS收集器?借此机会,把 G1收集器以及它和 CMS的对比一并彻底讲解。
猿java
2024/03/24
1K1
美团 2面:为什么 G1能够替代 CMS回收器?看完这篇你就懂了!
JVM中常用的垃圾收集器和收集算法(超详解G1收集器)
主要为对象, 而提到对象, 我们需要知道对象什么时候被回收? 主要是引用失效的时候, 那什么时候引用失效, 下面就要讲讲对象的四种引用了
天下之猴
2024/09/20
4871
JVM中常用的垃圾收集器和收集算法(超详解G1收集器)
Java垃圾回收(一)
自从有自动内存管理出现之时就有的一些收集算法,不同的收集器也是在不同场景下进行组合。
Yuyy
2022/09/21
3670
Java垃圾回收(一)
淘宝暑期实习一面:讲讲分代收集与三个分代假说
前文介绍了两种判定对象是否死亡的两种方法:引用计数法和可达性分析法,判断对象死亡后,咱就得收集它呀对不对,基于前者的垃圾收集算法称为 引用计数式垃圾收集(Reference Counting GC),基于后者的垃圾收集算法称为 追踪式垃圾收集(Tracing GC),这两类垃圾收集算法也常被称作 直接垃圾收集和 间接垃圾收集。
飞天小牛肉
2022/04/11
3850
淘宝暑期实习一面:讲讲分代收集与三个分代假说
[JAVA] JVM垃圾回收 - HotSpot的算法细节实现
本文介绍JVM垃圾回收算法的具体实现,介绍各个术语,并图文并茂介绍具体的实现细节。 垃圾回收判定及回收过程如下:
夹胡碰
2022/05/27
3210
[JAVA] JVM垃圾回收 - HotSpot的算法细节实现
GC面临的困境,JVM是如何解决跨代引用的?
前面我们讲了可达性分析和根节点枚举,介绍完了GC的前置工作,下面开始讲GC的工作过程。
BookSea
2023/08/23
4010
GC面临的困境,JVM是如何解决跨代引用的?
Java JVM 面试题
阿彬学java
2025/01/09
1170
Java底层:GC相关
光有垃圾标记算法还不行,JVM还需要有垃圾回收算法来将这些标记为垃圾的对象给释放回收掉。主要的回收算法有以下几种:
端碗吹水
2020/09/23
5400
Java底层:GC相关
肝了一周,彻底弄懂了 CMS收集器原理,这个轮子造的真值!
答:网上很多关于 CMS收集器的文章写得不够具体,有的甚至一知半解,更多的是不假思索的转载,想通过自己对 CMS的理解以及大量资料的佐证,提供更具体形象正确的分析。
猿java
2024/03/19
1.5K0
肝了一周,彻底弄懂了 CMS收集器原理,这个轮子造的真值!
炸了!一口气问了我18个JVM问题!
GC 对于Java 来说重要性不言而喻,不论是平日里对 JVM 的调优还是面试中的无情轰炸。
huofo
2022/03/16
3431
炸了!一口气问了我18个JVM问题!
详解 JVM Garbage First(G1) 垃圾收集器
Garbage First(G1)是垃圾收集领域的最新成果,同时也是HotSpot在JVM上力推的垃圾收集器,并赋予取代CMS的使命。如果使用Java 8/9,那么有很大可能希望对G1收集器进行评估。本文详细首先对JVM其他的垃圾收集器进行总结,并与G1进行了简单的对比;然后通过G1的内存模型、G1的活动周期,对G1的工作机制进行了介绍;同时还在介绍过程中,描述了可能需要引起注意的优化点。笔者希望通过本文,让有一定JVM基础的读者能尽快掌握G1的知识点。另,本文较长,建议收藏阅读。
aoho求索
2019/07/08
21.1K1
java中的垃圾回收机制简介
内存空间是有限的,运行时如果不能获取到内存,会抛出OutOfMemory,一种有效的解决措施是,抛弃那些程序永远不会不再用到的对象,腾出空间。
爬蜥
2019/07/09
9500
大厂面试题:有了 G1 还需要其他垃圾回收器吗?
我们在上一篇中,简要的介绍了 CMS 垃圾回收器,下面我们简单回忆一下它的一个极端场景(而且是经常发生的场景)。
小熊学Java
2023/09/19
3440
大厂面试题:有了 G1 还需要其他垃圾回收器吗?
垃圾收集原理依据及要点
跨代引用假说的具体解决办法是:在新生代上建立一个全局的数据结构(该结构被称为“记忆集”,Remembered Set),这个结构把老年代划分成若干小块,标识出老年代的哪一块内存会存在跨代引用。此后当发生Minor GC时,只有包含了跨代引用的小块内存里的对象才会被加入到GC Roots进行扫描。
BUG弄潮儿
2021/04/26
5150
八股文之【JVM垃圾回收】
上面提到的标记的算法,怎么标记一个对象是否存活?简单的通过引用计数法,给对象设置一个引用计数器,每当有一个地方引用他,就给计数器+1,反之则计数器-1,但是这个简单的算法无法解决循环引用的问题。
崩天的勾玉
2021/12/20
1K0
八股文之【JVM垃圾回收】
基础篇:java GC 总结,建议收藏
堆内存是所有线程共享的,jvm 在并发的环境进行内存分配存在同步竞争,为了加快对象的分配创建,jvm 为每个线程分配了一个私有缓存区域(在Eden空间内),这就是 Thread Local Allocation Buffer。使用TLAB可以避免一系列的非线程安全问题,同时还能够提升内存分配的吞吐量。如果私有 TLAB 使用完,则使用全局的
潜行前行
2022/08/30
5100
基础篇:java GC 总结,建议收藏
垃圾收集算法 Krains 2020-08-06
每个对象保存一个整型的引用计数器,假设有一个对象A,如果别的对象引用了A,就让A对象的引用计数器加1,如果引用失效了,计数器减1,当计数器为0的时候,该对象就是垃圾。
Krains
2020/08/10
3010
垃圾收集算法  Krains 2020-08-06
Java虚拟机八股文(背诵版)
今天补上 Java 虚拟机(JVM)篇的八股文后,加上之前的两篇(Java 基础和 Java 并发编程),整个 Java 核心技术方面的八股文就算是齐活了。
沉默王二
2021/09/03
2.3K0
Java岗 面试考点精讲(基础篇02期)
这块肯定是有争议的。面试的时候这样答:如果按照官方设计要求来打代码的话,hashcode一定相等。但是如果不按官方照设计要求、不重写hashcode方法,就会出现不相等的情况。
阮键
2019/08/07
3780
JVM常见面试题(四):垃圾回收
当需要排查各种内存溢出问题、当垃圾收集成为系统达到更高并发的瓶颈时,我们就需要对这些“自动化"的技术实施必要的监控和调节。
寻求出路的程序媛
2024/11/24
1680
JVM常见面试题(四):垃圾回收
相关推荐
美团 2面:为什么 G1能够替代 CMS回收器?看完这篇你就懂了!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档