C#异步调用链式委托方法

时间:2013-08-24 09:17:17

标签: c# asynchronous delegates

假设我有一个delegate,它引用bar个方法。当我像这个someDelegate(someParameter);或类似someDelegate.Invoke(someParameter);一样调用委托时,这个委托引用的方法实际上是一个接一个地同步调用的,对吧?有没有办法让这个调用异步?

1 个答案:

答案 0 :(得分:3)

您可以使用BeginInvoke代替Invoke。这将异步调用所有单个代表 - 但仍然是连续的。 (然后,您应该在传入EndInvoke的回调中致电BeginInvoke。有关详细信息,请参阅MSDN。)

如果你想在 parallel 中调用代理,可以使用MulticastDelegate.GetInvocationList单独获取它们,然后使用Parallel.Invoke来调用它们。