队列同步器AQS
2016-12-18 19:28:41 0 举报
AQS(AbstractQueuedSynchronizer)是一种基于FIFO(先进先出)原则的阻塞与非阻塞并发工具,它通过将每个共享资源的访问请求封装成一个事务(Transaction)对象,然后将这些事务对象放入队列中进行统一调度。AQS的主要组件包括状态、等待队列和同步器等。状态用于表示资源的访问权限,等待队列用于存放等待获取资源的线程,同步器则负责协调线程之间的竞争关系。AQS能够实现公平锁和非公平锁两种模式,以满足不同场景下的需求。
作者其他创作
大纲/内容
firstWaiter
nextWaiter
Node1
等待队列1
等待队列n
lastWaiter
锁状态位
同步器组件有锁状态位、一个同步队列,多个等待队列
next
.........
prev
同步队列
队列头是获取到锁的线程节点
tail
head
0 条评论
下一页