使用场景由于volatile并不能保证线程安全,并且我们书写的代码中绝大部分都不是原子操作,所以volatile的使用场景其实非常有限,想要正确的使用volatile关键字,需要遵循以下两点:
- 对volatile变量的写操作不依赖当前值
- volatile变量不包含在含有其它变量的不变式中
volatile变量的++操作正是违反了第一点,所以不算是正确的用法 。
补充【看完这篇volatile volatile什么用】我们总是在说,CPU寄存器的存取速度和内存(Memory)的速度相差了好几个数量级,内存与硬盘相差好几个数量级,但是他们到底差多少呢,一张图就可以解决这个问题 。
文章插图
总结仅仅依靠volatile关键字无法保证线程安全,但是理解volatile关键字的工作原理非常重要 。
作者:Sicimike
原文链接:https://blog.csdn.net/Baisitao_/article/details/100942368
- 一条看完一加9发布会
- 什么是“黄道吉日”?看完你也会择日!
- 葡萄酒挥发酸是什么?
- 装修时卧室墙面颜色怎么选,看完我知道了
- 看完这些介绍,别再说你的手机内存有64G,128G,512G
- 孕妇尿有什么用?为什么经常有人到农村回收孕妇尿,看完明白了
- 减肥期咖啡推荐,楼梯炭烧咖啡价格
- 这10个『民间禁忌』居然都是假的?看完放心了......
- 为什么作恶多端的人却迟迟没有报应呢?看完就明白了!
- 国产芯片企业的远见和布局有多厉害?看完这个就懂了!