1
我有一堆彼此独占的方法,因此可以并行运行。有没有这样做的好方法?到目前为止,我有以下两种实现,但我不确定是否应该使用其中一种。Parallel.For vs Parallel.Invoke
使用Parallel.For:
Parallel.For(0, 2, i =>
{
switch (i)
{
case 0:
SomeMethod1();
break;
case 1:
SomeMethod2();
break;
}
});
Parallel.Invoke(
() => { SomeMethod1(); },
() => { SomeMethod2(); }
);
以下哪种明智最好的表现?或者还有另一种更好的方法吗?
使用最易读的:'Parallel.Invoke(SomeMethod1,SomeMethod2);'不需要将方法包装在lambda中。 – Henrik
@Henrik如果方法是'var foo = bar();'我仍然必须将它们包装在lambda中,但是不是吗? – TheLethalCoder