Пример #1
0
 public void RunOnce()
 {
     for (;;)
     {
         bool didWork = false;
         MainLoopRun?.Invoke(ref didWork);
         if (didWork)
         {
             continue;
         }
         break;
     }
 }
Пример #2
0
 public void RunUntil(LoopDone done)
 {
     for (;;)
     {
         bool didWork = false;
         MainLoopRun?.Invoke(ref didWork);
         if (didWork)
         {
             continue;
         }
         if (!done())
         {
             Thread.Sleep(20);
         }
         else
         {
             break;
         }
     }
 }