AQS队列
2021-01-24 21:37:06 4 举报
AQS队列
作者其他创作
大纲/内容
1、CANCELLED:值为1,表示当前的线程被取消。2、SIGNAL:值为-1,表示当前节点的后继节点包含的线程需要运行,需要进行unpark操作。3、CONDITION:值为-2,表示当前节点在等待condition,也就是在condition queue中。4、PROPAGATE:值为-3,表示当前场景下后续的acquireShared能够得以执行。5、值为0,表示当前节点在syncqueue中,等待着获取锁。
tail
next=null
head
prev=node0
waitStatus=0
ReentrantLock lock = new ReentrantLock()lock sync head=null tail=null state=0 exclusiveOwnerThread=null
Node-waitStatus:int-prev:Node-next:Node-thread:thread-nextWaiter:Node
thread=t1
node0
thread=null
nextWaiter=null
prev=null
node1
0 条评论
下一页