private void RunTask(ThreadTask task) { task.OnCompletedTask += Task_OnCompletedTask; task.OnErrorTask += Task_OnErrorTask; ActiveTasks.Add(task); QueuingTasks.Remove(task); var thread = new System.Threading.Thread(() => { System.Threading.Thread.Sleep(task.DelayMilliseconds); task.Run(); }); thread.Start(); OnStartedTask?.Invoke(this, new ThreadManagerScheduledTaskEventArgs(task)); }
private void ScheduleTask(ThreadTask task) { QueuingTasks.Add(task); OnScheduledTask?.Invoke(this, new ThreadManagerScheduledTaskEventArgs(task)); }