我应该使用Parallel.ForEach
循环,内部应该调用方法。
Parallel.ForEach(myList, item => {
DoSomethingWithItem(item);
}
);
该方法应该是Task
还是其他什么?
private Task DoSomethingWithItem(MyClass item);
此外,此方法不应具有返回类型,但我有警告"并非所有代码路径都返回值"。尝试使用void
关键字,但似乎与Task
关键字不在同一上下文中。
答案 0 :(得分:2)
不要让它变得更复杂。
Parallel.ForEach(myList, item => {
DoSomethingWithItem(item);
}
);
对void DoSomethingWithItem(MyClass item)
完全没问题。
让它“更”异步是最难的,在最坏的情况下适得其反。