1. 6.7 Lock Conditionshistorical

    Condition variables with await/signal, predicate loops, lock association, spurious wakeups, and the relationship to Object.wait/notify.