理解在.NET中异步调用方法的替代方法

时间:2010-01-25 23:48:49

标签: .net asynchronous delegates

使用以下方法异步调用.NET方法有什么区别:

VS

VS

我假设前两个和第三个之间的区别在于某些对象(本例中为WebClient)本身支持通过专用方法进行异步调用,因此不需要使用BeginInvoke或IAsynchResult方法吗?

1 个答案:

答案 0 :(得分:1)

前两种方法实际上是齐头并进的。 BeginInvoke方法返回一个IAsyncResult,稍后您可以将其用于对EndInvoke的调用。第三种方法隐藏了很多这种复杂性,允许你在完成任务时给它一个委托来调用(通常更容易使用)。