我使用Parallel来执行具有不同输入值的单个方法,但我想获得该方法的返回值.
我怎么才能得到它 ?
我怎么才能得到它 ?
public class Work { public static void Main() { Parallel.Invoke(() => DoWork("Raju"),() => DoWork("Ramu")); } public static string DoWork(string data) { return "tesing" + data; } }
在上面的方法中我想获得DoWork的返回值.
解决方法
只需像这样处理返回值:
string result1,result2; Parallel.Invoke(() => result1 = DoWork("Raju"),() => result2 = DoWork("Ramu"));
还要记住,无论何时并行执行某些操作,都需要小心避免数据争用和竞争条件.