private void TaskStatusChanged(object sender, TaskStatusChangedEventArgs e) { // when task is finished, go to processing of the next one: if (e.IsFinished) { RemoveTask(e.Task); _startEvent.Set(); } }