diff --git a/UniversalExtensions.cs b/UniversalExtensions.cs index c415e6a..59e9ea4 100644 --- a/UniversalExtensions.cs +++ b/UniversalExtensions.cs @@ -179,7 +179,10 @@ public static class UniversalExtensions string UID = Guid.NewGuid().ToString(); CancellationTokenSource CancellationToken = new CancellationTokenSource(); - _ = Task.Delay(runTime.GetTimespanUntil().Milliseconds, CancellationToken.Token).ContinueWith(x => + if ((int)Math.Ceiling(runTime.GetTimespanUntil().TotalMilliseconds) < 0) + runTime = DateTime.UtcNow.AddSeconds(1); + + _ = Task.Delay((int)Math.Ceiling(runTime.GetTimespanUntil().TotalMilliseconds), CancellationToken.Token).ContinueWith(x => { if (registeredScheduledTasks.ContainsKey(UID)) registeredScheduledTasks.Remove(UID); @@ -218,9 +221,9 @@ public static class UniversalExtensions /// Gets a list of all registered tasks /// /// A list of all registered tasks - public static IReadOnlyDictionary? GetSheduleTasks() + public static List>? GetSheduleTasks() { - return registeredScheduledTasks.ToList() as IReadOnlyDictionary; + return registeredScheduledTasks.ToList(); }