6.3 每日总结(什么是AQS?)

AQS的话,其实就一个jdk提供的类AbstractQueuedSynchronizer。他是多线程的队列同步器。就是一个锁框架。

像ReentrantLock,Semaphore都是基于AQS实现的。

内部有一个属性 state 属性来表示资源的状态,默认state等于0,表示没有获取锁,state等于1的时候才标明获取到了锁。通过cas 机制设置 state 状态。

在它的内部还提供了基于 FIFO 的等待队列,是一个双向列表,队列中存储的就是排队的线程

posted @ 2025-06-12 23:50  笠大  阅读(8)  评论(0)    收藏  举报