java八股文面试[多线程]——并发三大特性 原子 可见 顺序

AutomicInteger : volatile + CAS

总线LOCK MESI 两个协议 TODO

volatile的可见性和禁止重排序是怎么实现的:

DCL场景:

new操作会在字节码层面生成两个步骤: 分配内存、调用构造器 然后把引用赋值给singleton

不加volatile则会发生指令重排,可能得到不完整的对象

知识来源:

【并发与线程】并发三大特性_哔哩哔哩_bilibili

【2022年面试】volatile的可见性和禁止指令重排序怎么实现的_哔哩哔哩_bilibili

相关推荐
姓蔡小朋友6 分钟前
后端面试八股文
面试·职场和发展
java修仙传7 分钟前
力扣hot100:旋转排序数组中找目标值
算法·leetcode·职场和发展
努力学算法的蒟蒻2 小时前
day40(12.21)——leetcode面试经典150
算法·leetcode·面试
a努力。2 小时前
国家电网Java面试被问:二叉树的前序、中序、后序遍历
java·开发语言·后端·面试
lalala_Zou2 小时前
小米日常实习一面
java·后端·面试
月明长歌2 小时前
【码道初阶】LeetCode面试题 17.14 最小 K 个数:两种堆解法的“同题不同命”
算法·leetcode·职场和发展
LYFlied2 小时前
【每日算法】LeetCode238. 除自身以外数组的乘积
数据结构·算法·leetcode·面试·职场和发展
a程序小傲2 小时前
京东Java面试被问:垃圾收集算法(标记-清除、复制、标记-整理)的比较
java·算法·面试
元亓亓亓2 小时前
LeetCode热题100--118. 杨辉三角--简单
算法·leetcode·职场和发展
杜子不疼.3 小时前
【LeetCode 35 & 69_二分查找】搜索插入位置 & x的平方根
算法·leetcode·职场和发展