当并发线程将缓存运行变量时,这意味着它将在线程工作内存中缓存。
Java中的volatile关键字用作Java编译器和Thread的指示符,它们不缓存此变量的值,而始终从主内存中读取它。因此,如果您希望共享实现中读写操作是原子性的任何变量,则必须声明为易失性变量。
您可以在下图中看到一个好主意

当并发线程将缓存运行变量时,这意味着它将在线程工作内存中缓存。
Java中的volatile关键字用作Java编译器和Thread的指示符,它们不缓存此变量的值,而始终从主内存中读取它。因此,如果您希望共享实现中读写操作是原子性的任何变量,则必须声明为易失性变量。
您可以在下图中看到一个好主意