public static void Run(SchedulerQueue queue)
 {
     while (queue.Count > 0)
     {
         ScheduledItem scheduledItem = queue.Dequeue();
         if (!scheduledItem.IsCanceled)
         {
             TimeSpan timeSpan = scheduledItem.DueTime - Scheduler.CurrentThreadScheduler.Time;
             if (timeSpan.get_Ticks() > 0L)
             {
                 Thread.Sleep(timeSpan);
             }
             if (!scheduledItem.IsCanceled)
             {
                 scheduledItem.Invoke();
             }
         }
     }
 }
Пример #2
0
 public static void Run(SchedulerQueue queue)
 {
     while (queue.Count > 0)
     {
         ScheduledItem scheduledItem = queue.Dequeue();
         if (!scheduledItem.IsCanceled)
         {
             TimeSpan timeout = scheduledItem.DueTime - Time;
             if (timeout.Ticks > 0)
             {
                 Thread.Sleep(timeout);
             }
             if (!scheduledItem.IsCanceled)
             {
                 scheduledItem.Invoke();
             }
         }
     }
 }
Пример #3
0
                public static void Run(SchedulerQueue queue)
                {
                    while (queue.Count > 0)
                    {
                        ScheduledItem item = queue.Dequeue();
                        if (!item.IsCanceled)
                        {
                            TimeSpan wait = item.DueTime - CurrentThreadScheduler.Time;
                            if (wait.Ticks > 0)
                            {
                                Thread.Sleep(wait);
                            }

                            if (!item.IsCanceled)
                            {
                                item.Invoke();
                            }
                        }
                    }
                }