java volatile与锁 个人理解
来源:互联网 发布:优化软件点击 编辑:程序博客网 时间:2024/06/01 15:02
书上意思:
当把变量声明为volatile类型后,编译器与运行时都会注意到这个变量是共享的,因此不会将该变量上的操作与其他内存操作一起重排序,volatile变量不会被缓存在寄存器或者对其他处理器不可见的地方,因此在读取volatile类型的变量时总会返回最新写入的值!
volatile
- volatile 只保证了共享变量在线程间的可见性,当某个线程修改了变量V,在底层计算机中会先将当前值写入内存中且使其他处理器(注意是处理器)中变量V所在地址的缓存行(块)失效,如TLB,L1,L2,L3缓存。
锁
锁既保证了线程的互斥,也拥有与volatile一样的效果
所以volatile被称为轻量级的锁?
以上是本人觉得比较符合理解的。。。。
阅读全文
0 0
- java volatile与锁 个人理解
- Java中Volatile个人理解
- 【java】Volatile使用与理解
- Java:volatile的理解与应用
- Volatile使用与理解
- volatile理解与使用
- java thread volatile 理解
- Java volatile 关键字理解
- java volatile理解
- Java并发volatile理解
- Java volatile 理解
- java volatile理解
- 个人关于java与指针的理解
- 快速排序个人理解与java实现
- java类与对象个人理解
- java类与对象个人理解2
- Java并发编程之volatile关键字的理解与使用
- Java关键字volatile的理解与正确使用
- 面向对象的特征之二-继承性
- 1.TPC-C测试工具一——TPC-C简介
- CF 862A. Mahmoud and Ehab and the MEX
- Train Seats Reservation
- 博客迁至https://zhangqibupt.github.io/
- java volatile与锁 个人理解
- CFS中的虚拟运行时间vruntime 的理解
- 启动tomcat失败,原因端口占用,但是不能通过结束服务关掉tomcat解决方法
- [施工...][业界良心]数论
- poj3734(矩阵快速幂)
- Java实现快速排序
- 查找
- Overlapping Rectangles
- 向上取整和向下取整