如何确保在TPL完成所有任务时将触发回调

时间:2016-04-25 17:39:40

标签: c# task-parallel-library

告诉我如何编写代码,结果将调用回调函数通知我所有任务,如task1,task2,task3已经完成。感谢

enter image description here

1 个答案:

答案 0 :(得分:2)

您可以将Task.ContinueWithTask.WhenAll一起使用,也可以使用Task.WaitAll代码在WaitAll调用后运行。

var executingTask = Task.WhenAll(task1, task2, task3).ContinueWith((antecedent) =>{/*your code*/});

有关其他详细信息,请参阅Task.ContinueWith documentation

// WaitAll blocks until all tasks are complete
Task.WaitAll(task1, task2, task3);
/*your code on the following lines(s) which will run after task1,task2,task3 are complete*/