using System; using System.Threading; namespace LostSignals { class AWait : ISynch { private object syncRoot = new object(); public void Acquire() { lock (syncRoot) { Monitor.Wait(syncRoot); } } public void Release() { lock (syncRoot) { Monitor.Pulse(syncRoot); } } } }