AbstractQueuedSynchronizer::signalNext源码笔记
signalNext函数的作用为通知指定节点的后继节点结束等待状态
static final int WAITING = 1; // must be 1 static final int CANCELLED = 0x80000000; // must be negative static final int COND = 2; // in a condition wait // 通知h的后继节点s结束等待状态 private static void signalNext(Node h) { Node s; if (h != null && (s = h.next) != null && s.status != 0) { s.getAndUnsetStatus(WAITING); LockSupport.unpark(s.waiter); } }

浙公网安备 33010602011771号