java 并发底层不得不看-AQS(AbstractQueuedSynchronizer)

AbstractQueuedSynchronizer

学习之前需要准备:

1.双向链表:

2.CAS理论知识

3.volatile 有啥用

1.AQS 是啥这玩意有啥用啊,设计它的目的是啥

AQS是抽象类,是一个利用模板模式写好一些方法,让别的类去使用它可以快速实现锁组件。

这样用来支持不同业务场景的各个锁,都可以基于它去自行实现。

例如:

2.怎么设计的具体代码体现

private volatile int state;  一个原子性状态,提供了comapareAndSet方法

Node tail   尾节点  (等待队列)

Node head  头节点

ConditionObject 条件队列

3.怎么用这玩意

具体可以看各个lock的实现

4.从这玩意中学到了什么

 

 

 


 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章