AQS深入理解(二)

乐观锁

很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机制。乐观锁适用于多读的应用类型,这样可以提高吞吐量

AQS的锁类型有两种:Exclusive(独占锁),Share(共享锁)。

Exclusive(独占锁):每次都只有一个线程运行,例如ReentrantLock。

Share(共享锁):同时可以多个线程运行,如Semaphore、CountDownLatch、ReentrantReadWriteLock。

下面进行AQS源码:

 

 ReentrantLock底层代码分析:

 

 

 

 

 参考文章

深入剖析AQS和CAS,看了都说好_黎杜的博客-CSDN博客_aqs cas


版权声明:本文为Jay112011原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。