public void Execute(ITaskExecution taskExecution) { _thread = new Thread(() => { _status = WorkerStatus.Working; taskExecution.Status = TaskStatus.Running; try { taskExecution.Task.Execute(taskExecution.Configuration); taskExecution.Status = TaskStatus.Successful; } catch (Exception exception) { taskExecution.Log(exception); taskExecution.Status = TaskStatus.Failed; } _status = WorkerStatus.Waiting; }); _thread.Start(); }
public void Schedule(ITaskExecution taskExecution) { }
// Отметка о выполнении public IActionResult ExecuteTask(int taskID, ITaskExecution execution) { return(null); }
/// <summary> /// Schuedule a new task. /// </summary> /// <param name="task"></param> public void Add(ITaskExecution task) { task.Status = TaskStatus.Queued; _tasks.Add(task); }