internal void ScheduleInternal(ScheduleTask task) { ScheduleTask scheduleTask = this.updatingTask; if (this.dispatcherTokens[(int)task.Priority] != null) { return; } SchedulingService.DispatcherToken dispatcherToken = new SchedulingService.DispatcherToken(this, task.Priority); this.dispatcherTokens[(int)task.Priority] = dispatcherToken; }
public void UnregisterTask(ScheduleTask task) { if (task.ReverseDependencies.Count > 0) { throw new ArgumentException(ExceptionStringTable.CantRemoveATaskThatOtherTasksDependOn); } foreach (ScheduleTask scheduleTask in task.Dependencies) { scheduleTask.ReverseDependencies.Remove(task); } task.Dependencies.Clear(); this.taskDictionary.Remove(task.Name); this.taskList.Remove(task); }
internal void SetUpdatingTaskInternal(ScheduleTask task) { this.updatingTask = task; }