volatile和cas的互换 是在把对volatile操作的代码块用synchronized锁住的时候吗?