public void YieldToScheduler () { if (IsPaused || IsScheduled) { if (pause_event == null) { pause_event = new ManualResetEvent (false); } pause_event.WaitOne (); } }