March 2003
Intermediate to advanced
656 pages
39h 30m
English
release
s.release( )When s’s state is greater
than 0 or when the state is 0
but no thread is waiting on s,
release increments the state by
1. When
s’s state is
0 and some thread is waiting on
s, release leaves
s’s state at
0 and wakes up an arbitrary waiting thread. The
thread that calls release is not suspended: it
remains ready and continues to execute normally.