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

AutomicInteger : volatile + CAS

总线LOCK MESI 两个协议 TODO

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

DCL场景:

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

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

知识来源:

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

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

相关推荐
SteveJrong6 小时前
面试题 - JavaScript
前端·javascript·面试·ecmascript·基础·找工作·红宝书
LucianaiB8 小时前
仓颉语言核心技术解析:如何开发高性能服务端应用
职场和发展·高性能·语言·仓颉
用户47949283569158 小时前
typeof null === 'object':JavaScript 最古老的 bug 为何 30 年无法修复?
前端·javascript·面试
无心水13 小时前
深入Java线程池:BlockingQueue实现全景解析与实战指南
java·后端·面试
Java水解13 小时前
JAVA面试题大全(200+道题目)
java·后端·面试
编程岁月13 小时前
java面试-0305-java线程调度方法?sleep()和wait()区别?
java·开发语言·面试
用户0919 小时前
Kotlin Flow的6个必知高阶技巧
android·面试·kotlin
用户0919 小时前
Flutter插件与包的本质差异
android·flutter·面试