C#.NET任务:如何在多个任务完成时获取通知

Mas*_*Mas 5 .net .net-4.0 task

在我的WPF应用程序中,我需要并行运行2个长时间运行的任务,这两个任务都返回需要在UI中显示的数据.

我的视图模型中有一个名为IsBusy的属性,在两个任务完成之前都应该为true.

如何在2个长时间运行的任务完成后收到通知?

我不想使用Task.WaitAll,因为它会阻止我的UI线程.我不想使用ContinueWith链接任务,因为我希望这些长时间运行的任务并行运行.

Qry*_*taL 5

使用TaskScheduler.FromCurrentSynchronizationContext()并将其传递给TaskFactory.ContinueWhenAll(...)以在两个任务完成后执行UI更新.