我有一個ContextMenuStrip控件,允許您執行一個動作是兩種不同的風格:Sync
和Async
。動作T同步和異步
我試圖掩蓋使用泛型所以我做了這一切:
public class BaseContextMenu<T> : IContextMenu
{
private T executor;
public void Exec(Action<T> action)
{
action.Invoke(this.executor);
}
public void ExecAsync(Action<T> asyncAction)
{
// ...
}
我怎麼可以爲了執行通用的動作和「有所作爲」,在此期間的菜單寫異步方法? 我看到的BeginInvoke
的簽名是這樣的:
asyncAction.BeginInvoke(this.executor, IAsyncCallback, object);
讓我看看 – Raffaeu 2010-03-12 16:57:08
謝謝,這就是我一直在尋找的東西。我只是遇到了lambda表達式的一個問題,我不需要關於多線程編程的課程。 ;-) – Raffaeu 2010-03-12 17:23:47
+1。傑夫的文章。這真的很有見地,幫了我很多。 – IAbstract 2010-12-31 15:21:16