我最近在read this thread on MSDN。所以我想使用lambda表達式作爲調用EndInvoke的一種方式,以確保一切都很好和整齊。哪一個更準確?結束BeginInvoke的正確方法是什麼?
例子1:
Action<int> method = DoSomething;
method.BeginInvoke(5, (a)=>{method.EndInvoke(a);}, null);
例2:
Action<int> method = DoSomething;
method.BeginInvoke(5, (a)=>
{
Action<int> m = a.AsyncState as Action<int>;
m.EndInvoke(a);
}, method);
其實我已經讀過那篇文章,這似乎有點多餘使用QueueUserWorkItem(如果您可以將調用中的lambda傳遞給BeginInvoke)。 – 2009-01-12 15:44:18