Takes the locked variable
var
, unlocks it, and blocks until another
thread does a
cond_signal
or
cond_broadcast
for that variable. The variable is
relocked after the
cond_wait
has been satisfied. If multiple
threads are
cond_wait
ing, all but one will reblock waiting to
reacquire the lock.