如何理解java volatile
如何理解java volatile
Java的volatile关键字可以确保将变量的更新操作通知到其他线程。当一个线程更新了volatile变量的值时,其他线程会立刻得知这个变化。
使用volatile关键字声明的变量,会被JVM放在主内存中,而不是每个线程的工作内存中。当线程访问volatile变量时,会首先从主内存中读取变量的值,然后进行操作,操作完成后再将变量的值写回主内存中。
使用volatile关键字声明的变量,可以确保变量的内存可见性。当一个线程更新了volatile变量的值时,其他线程会立刻得知这个变化。
使用volatile关键字声明的变量,还可以确保变量的原子性。当对volatile变量执行写操作时,JVM会确保变量的写操作不会被中断。
使用volatile关键字声明的变量,可以确保变量的内存可见性和原子性,但是不能保证变量的有序性。
相关文章