异步等待Task <t>而不使用async / await </t>

时间:2013-10-01 12:31:10

标签: c# asynchronous task-parallel-library

我希望在执行其他操作之前完成Task。如果我使用

Task.WaitAll(task);

它肯定会阻止我的UI线程。在不使用Task(我正在使用.NET v4.0)的情况下异步等待async / await完成的最佳方法是什么?

1 个答案:

答案 0 :(得分:7)

async / await添加到项目中时,也可以在.NET 4.0中使用Microsoft.Bcl.Async NuGet package。除此之外,您没有太多选择 - 要么使用异步调用,要么使用您提到的方法阻止您的线程。

但是,在使用异步方法时,您不必绑定await。您也可以使用回调:

task.ContinueWith(r => {
    /* code */
});