我有一个模型类的集合,我不想将每个类单独映射到视图模型类。
我可以使用Parallel.ForEach
or ParallelEnumerable.ForAll
,那么 2 之间有什么区别(如果有的话)?
我在 MSDN 上找不到任何东西。
我可以使用 Parallel.ForEach 或 ParallelEnumerable.ForAll,那么两者之间有什么区别(如果有的话)?
Parallel.ForEach
相当于foreach
在普通代码中使用。
该ParallelEnumerable.ForAll
方法实际上等效于List<T>.ForEach
.
两者的执行和工作方式相似,尽管该ForAll
方法要求您已经使用 PLINQ,因为您需要一个ParallelEnumerable
. Parallel.ForEach
直接关闭任何IEnumerable<T>
.
一般来说,我更喜欢Parallel.ForEach
,因为 的唯一目的ForAll
是引起副作用。正如Eric Lippert 详细描述的那样,这有一些缺点。