前言 在高并发的应用当中,最关键的问题就是对共享变量的安全访问,通常我们都是通过加锁的方式,比如说synchronized.Lock来保证原子性,或者在某些应用当中,用voliate来保证变量的可见性,还有就是通过TheadLocal将变量copy一份,称为局部变量(线程私有)等等.现在我们学习一种不加锁机制(CAS) 上述我们提到的synchronized和Lock这都是通过加锁实现的(悲观锁),其实加锁本质上是将并发转变成串行实现的,势必会阻塞线程的执行,影响应用的吞吐量,而CAS正是一种乐…