说Atomic类之前,先聊一聊volatile. 对volatile的第一印象就是可见性.所谓可见性,就是一个线程对共享变量的修改,别的线程能够感知到. 但是对于原子性,volatile是不能保证的.来看看自增操作的问题: volatile int i; i++; i++ 在多线程环境下,是不能保证最终的结果正确的.比如某个时刻,i=5,线程A读取了i的值,说时迟那时快,就在马上要执行++操作时,线程A突然就被切换走了:然后线程B也读取i的值,进行了++操作.这时i的值是6,即使线程A的工作内存…