Java并发面试题:(五)volatile关键字

volatile 是什么

一旦一个共享变量(类的成员变量、类的静态成员变量)被volatile修饰之后,那么就具备了两层语义:

1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线

程来说是立即可见的,volatile关键字会强制将修改的值立即写入主存。

2)禁止进行指令重排序。

volatile的作用

volatile作用

Volatile 一般用于 状态标记量 和 单例模式的双检锁

volatile的一个重要作用就是和CAS结合,保证了原子性,详细的可以参见java.util.concurrent.atomic 包下的类,比如 AtomicInteger 。

相关推荐
狄加山6754 分钟前
系统编程(线程互斥)
java·开发语言
星迹日4 分钟前
数据结构:二叉树—面试题(二)
java·数据结构·笔记·二叉树·面试题
组合缺一6 分钟前
solon-flow 你好世界!
java·solon·oneflow
HHhha.15 分钟前
JVM深入学习(二)
java·jvm
Hunter_pcx17 分钟前
[C++技能提升]插件模式
开发语言·c++
杰九27 分钟前
【全栈】SprintBoot+vue3迷你商城(10)
开发语言·前端·javascript·vue.js·spring boot
叩叮ING38 分钟前
正则表达式中常见的贪婪词
java·服务器·正则表达式
左手の明天1 小时前
【C/C++】C++中使用vector存储并遍历数据
c语言·开发语言·c++
组合缺一1 小时前
Solon Cloud Gateway 开发:熟悉 Completable 响应式接口
java·gateway·reactor·solon
关关钧1 小时前
【R语言】函数
开发语言·r语言