internal static void Process() { if (Timers.Count == 0) { return; } DateTime now = DateTime.Now; for (int i = 0; i < Timers.Count; ++i) { TimerData timer = Timers[i]; if (timer.IsOnTime(now)) { bool repeat = timer.OnTimer(now, timer.Context); if (repeat) { Timers[i] = timer.CreateNew(); } else { Timers.RemoveAt(i--); } } } }
internal static void Process() { for (int i = 0; i < Timers.Count; ++i) { TimerData timer = Timers[i]; if (timer.IsOnTime) { bool repeat = timer.OnTimer(timer.Context); if (repeat) { Timers[i] = timer.CreateNew(); } else { Timers.RemoveAt(i--); } } } }