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() } }