Lock接口定义用户调用规范。AQS实现锁,state表示同步状态,每个线程来获取该状态。
双向队列来保存等待中的线程。
阻塞、唤醒操作由LockSupport的park、unPark来实现。
Condition等待唤醒机制,维持一个睡眠状态的线程队列。
state 锁的同步状态
waitStatus等待队列状态
第一个线程过来获取锁时,直接获取成功。
Lock接口定义用户调用规范。AQS实现锁,state表示同步状态,每个线程来获取该状态。
双向队列来保存等待中的线程。
阻塞、唤醒操作由LockSupport的park、unPark来实现。
Condition等待唤醒机制,维持一个睡眠状态的线程队列。
state 锁的同步状态
waitStatus等待队列状态
第一个线程过来获取锁时,直接获取成功。