volatile可以保证单个指令的原子性