タスクが完了するまで実行された場合にのみ、タスクの結果を出力しています。ただし、タスクのステータスがフォルトの場合、他のタスクを完了して正しく印刷することはできません。タスクが失敗した場合でも印刷できる ContinueWhenAny またはその他の方法を使用する方法はありますか?
コード:
public List<Task> tasksList = new List<Task>(); // List of tasks being created
private void CheckNewResult()
{
Task.Factory.ContinueWhenAll(tasksList.ToArray(), CompleteTasks);
}
//Only runs if all tasks Ran to Completion
private void CompleteTasks(Task[] tasks){
if(tasks.All(t => t.Status == TaskStatus.RanToCompletion))
{
for(var numResults = 0; numResults < WebResult.Count; numResults++)
{
Print Results(numResults); //print each url result in the list
}
}
}
public void PrintResults(int index){
// Print the results using info within web result list
}