C# 什么';以异步方式调用普通方法的最佳方法是什么?

C# 什么';以异步方式调用普通方法的最佳方法是什么?,c#,.net,C#,.net,只要有一个正常的方法,比如 void DosomethingLong() 以异步方式调用它的最佳方式是什么?标准方式是创建该方法的委托: Action myMethod = DosomethingLong; 然后使用()异步执行它: 你还可以使用其他方法;使用线程、使用BackgroundWorker等,具体取决于您的具体要求。标准方法是创建方法的委托: Action myMethod = DosomethingLong; 然后使用()异步执行它: 你还可以使用其他方法;使用线程、使用Bac

只要有一个正常的方法,比如

void DosomethingLong()


以异步方式调用它的最佳方式是什么?

标准方式是创建该方法的委托:

Action myMethod = DosomethingLong;
然后使用()异步执行它:


你还可以使用其他方法;使用线程、使用BackgroundWorker等,具体取决于您的具体要求。

标准方法是创建方法的委托:

Action myMethod = DosomethingLong;
然后使用()异步执行它:


你还可以使用其他方法;使用线程、使用BackgroundWorker等,具体取决于您的具体要求。

如果使用.NET 4,您可以这样做

var yourLongRunningTask = Task.Factory.StartNew(DosomethingLong);
// some time later
Task.WaitAll(yourLongRunningTask);

如果使用.NET4,您可以

var yourLongRunningTask = Task.Factory.StartNew(DosomethingLong);
// some time later
Task.WaitAll(yourLongRunningTask);

NET框架的哪个版本?根据哪些标准的最佳方式?@DHN:“标准”是“标准”的复数形式:)(我忍不住)嗯,没有一天不学习新东西,谢谢。(我不是以英语为母语的)很抱歉给您带来不便;o) NET框架的哪个版本?根据哪些标准的最佳方式?@DHN:“标准”是“标准”的复数形式:)(我忍不住)嗯,没有一天不学习新东西,谢谢。(我不是以英语为母语的)很抱歉给您带来不便;o)