17.5 セマフォ
プロセス同期の一般的なメカニズムは ロック (あるいは セマフォ ) です。ロックは2つのアトミックなアクションを提供します。すなわち、 獲得 と 解放 です。次は Scala におけるロックの実装です。
package scala.concurrent class Lock { var available = true def acquire = synchronized { while (!available) wait() available = false } def release = synchronized { available = true notify() } }