JVM篇常见题型讲解(女蓝夺冠,yyds)

简介: JVM篇常见题型讲解(女蓝夺冠,yyds)

目录

进阶篇

26,什么是空闲列表?

27,什么是TLAB?

28、对象头具体都包含哪些内容?

本期分享到此为止,关注博主不迷路,叶秋学长带你上高速~~


进阶篇

26,什么是空闲列表?

如果Java堆内存中的内存并不是规整的,已被使用的内存和空闲的内存相互交错在一起,不可以进行指针碰撞啦,虚拟机必须维护一个列表,记录哪些内存是可用的,在分配的时候从列表找到一块大的空间分配给对象实例,并更新列表上的记录,这种分配方式就是空闲列表。

27,什么是TLAB?

可以把内存分配的动作按照线程划分在不同的空间之中进行,每个线程在Java堆中预先分配一小块内存,这就是TLAB(Thread Local Allocation Buffer,本地线程分配缓存) 。虚拟机通过-

XX:UseTLAB设定它的。

28、对象头具体都包含哪些内容?

在我们常用的Hotspot虚拟机中,对象在内存中布局实际包含3个部分:

  1. 对象头
  2. 实例数据
  3. 对齐填充

而对象头包含两部分内容,Mark Word中的内容会随着锁标志位而发生变化,所以只说存储结构就好了。

  1. 对象自身运行时所需的数据,也被称为Mark Word,也就是用于轻量级锁和偏向锁的关键点。

具体的内容包含对象的hashcode、分代年龄、轻量级锁指针、重量级锁指针、GC标记、偏向

锁线程ID、偏向锁时间戳。

  1. 存储类型指针,也就是指向类的元数据的指针,通过这个指针才能确定对象是属于哪个类的实

例。

如果是数组的话,则还包含了数组的长度。

网络异常,图片无法展示
|


相关文章
|
机器学习/深度学习 人工智能 算法
|
算法 数据库 C语言
蓝桥杯2020年第十一届JavaB组真题题目+解析+代码+答案:2.纪念日
蓝桥杯2020年第十一届JavaB组真题题目+解析+代码+答案:2.纪念日
130 0
蓝桥杯2020年第十一届JavaB组真题题目+解析+代码+答案:2.纪念日
蓝桥杯2019年第十届JavaB组真题题目+解析+代码+答案:1.组队
蓝桥杯2019年第十届JavaB组真题题目+解析+代码+答案:1.组队
119 0
蓝桥杯2019年第十届JavaB组真题题目+解析+代码+答案:1.组队
|
算法 Java
洛谷新手村算法题分析
本文汇总洛谷新手村算法题的分析解答,题目代码基本由Java实现。
107 0
洛谷新手村算法题分析
|
人工智能 移动开发 测试技术
第十三届蓝桥杯A组省赛填空程序真题集
第十三届蓝桥杯A组省赛填空程序真题集
453 0
第十三届蓝桥杯A组省赛填空程序真题集
蓝桥杯2020年第十一届JavaB组真题题目+解析+代码+答案:4.分配口罩
蓝桥杯2020年第十一届JavaB组真题题目+解析+代码+答案:4.分配口罩
135 0
第六届蓝桥杯JavaC组省赛真题——详细答案对照(包含垒骰子)-2
第六届蓝桥杯JavaC组省赛真题——详细答案对照(包含垒骰子)
114 0
第六届蓝桥杯JavaC组省赛真题——详细答案对照(包含垒骰子)-2
|
机器学习/深度学习
第六届蓝桥杯JavaC组省赛真题——详细答案对照(包含垒骰子)-1
第六届蓝桥杯JavaC组省赛真题——详细答案对照(包含垒骰子)
128 0
第六届蓝桥杯JavaC组省赛真题——详细答案对照(包含垒骰子)-1
下一篇
无影云桌面