1、我个人理解是CAS操作是为了避免锁升级的一种最基本操作。可以看做是一个条件判断。其实,很多JUC下的锁都是基于CAS实现的。
升级轻量级的关键是是否有多个线程交替执行。
2、其实跟1的CAS也有关系
当然要是想更加深入,可以研究相关源码。纯属个人理解,毕竟个人能力有限,欢迎指教交流,共同进步。
synchronzied偏向锁的批量重偏向与撤销JVM在编译synchronzied时,会编译成monitorenter monitorexit指令,是一种JVM规范 synchronzied锁的种类 轻量锁:多个线程交替...