2using System.Threading.Tasks;
21 DateTime TP = Action.ScheduledFor;
22 if (TP != DateTime.MinValue)
24 Action.ScheduledFor = DateTime.MinValue;
28 Action.ScheduledFor = scheduler.Add(When, ExecuteAction, Action);
37 if (Action.ScheduledFor != DateTime.MinValue)
39 Action.ScheduledFor = DateTime.MinValue;
40 scheduler.Remove(Action.ScheduledFor);
44 private static async Task ExecuteAction(
object P)
47 await Action.Action();
Static class managing delayed actions.
static void Remove(IDelayedAction Action)
Removes a delayed action
static void Add(IDelayedAction Action, DateTime When)
Queues a delayed action. If previously queued, previously queued item will be removed.
Class that can be used to schedule events in time. It uses a timer to execute tasks at the appointed ...
Interface for delayed actions.