Home | History | Annotate | Download | only in locks

Lines Matching refs:pred

782         Node pred = node.prev;
783 while (pred.waitStatus > 0)
784 node.prev = pred = pred.prev;
789 Node predNext = pred.next;
797 if (node == tail && compareAndSetTail(node, pred)) {
798 pred.compareAndSetNext(predNext, null);
800 // If successor needs signal, try to set pred's next-link
803 if (pred != head &&
804 ((ws = pred.waitStatus) == Node.SIGNAL ||
805 (ws <= 0 && pred.compareAndSetWaitStatus(ws, Node.SIGNAL))) &&
806 pred.thread != null) {
809 pred.compareAndSetNext(predNext, next);
821 * control in all acquire loops. Requires that pred == node.prev.
823 * @param pred node's predecessor holding status
827 private static boolean shouldParkAfterFailedAcquire(Node pred, Node node) {
828 int ws = pred.waitStatus;
841 node.prev = pred = pred.prev;
842 } while (pred.waitStatus > 0);
843 pred.next = node;
850 pred.compareAndSetWaitStatus(ws, Node.SIGNAL);