AQS源码解读(番外篇)——四种自旋锁原理详解(Java代码实现SpinLock、TicketSpinLock、CLH、MCS)
何为自旋锁自旋锁是为实现保护共享资源而提出的一种锁机制。自旋锁与Java中的synchronized和Lock不同,不会引起调用线程阻塞睡眠。如果有线程持有自旋锁,调用线程就会一直循环检测锁的状态,直到其他线程释放锁,调用线程才停止自旋,获取锁。自旋锁的优势和缺陷自旋锁的优点很明显:自旋锁不会使线程状态进行切换,一直处于用户态,即不会频繁产生上下文切换,执行速度快,性能高。正是因为其不进行上下文切