volatile的可见性原理是什么
volatile关键字的可见性
volatile关键字是一个多线程编程中非常重要的概念,它能够保证可见性,即当一个线程修改一个共享变量时,另一个线程可以立即看到这个修改。
1、什么是可见性
可见性指的是一个线程对另一个线程的修改是可见的,即一个线程修改的共享变量,另一个线程能够立即看到这个修改。
2、volatile关键字的作用
volatile关键字能够保证可见性,当一个线程修改一个共享变量时,另一个线程可以立即看到这个修改。它的作用是强制将修改的值立即写入主存,以便其他线程可以立即看到这个修改的值。
3、原理
volatile关键字的可见性原理是:当一个线程修改一个volatile变量时,JVM会把这个变量的修改立即写入主存,以便其他线程可以立即看到这个修改的值。
在volatile变量上的操作都是原子性的,即不会被线程调度程序中断,从而保证了可见性。另外,volatile变量也会禁止指令重排序优化,从而保证了有序性。
4、示例代码
public class VolatileTest {
// 定义一个共享变量
private volatile int count = 0;
public void increase() {
// 每次增加1
count++;
}
public int getCount() {
return count;
}
}上一篇
新站优化需要注意什么 猜您想看
-
SOFABoot的Readiness健康检查机制是怎样的
SOFABoo...
2023年05月23日 -
在CS:GO中,如何禁用乱码字符?
如何禁用CS:...
2023年04月17日 -
Go 语言中如何理解协程通信实现的消息传递篇
协程通信实现的...
2023年07月21日 -
Spark2.3.1使用技巧是什么样的
1、提升查询性...
2023年05月25日 -
Dreamweaver怎么给网页添加Flash影片
使用Dream...
2023年07月20日 -
简单介绍MySQL的四种隔离级别
MySQL的四...
2023年07月23日