volatile只能作用于变量,保证了操作可见性和有序性,不保证原子性。 在Java的内存模型中分为主内存和工作内存,Java内存模型规定所有的变量存储在主内存中,每条线程都有自己的工作内存。 主内存和工作内存之间的交互分为8个原子操作: - lock - unlock - read - load - assign - use - store...
volatile 是一种轻量级的同步机制,用于保证变量在多个线程之间的可见性。其特点如下: 可见性:volatile 保证对该变量的读写操作都是可见的,即当一个线程修改了该变量的值,其他线程可以立即看到修改后的值,而不是使用缓存中的旧值。 有序性:volatile 保证对该变量的读写操作是有序的,即不会出现指令重排序的现象...