我想知道我是否将所有常规ForEach更改为Parallel.ForEach,是否会加快所有迭代的速度,还是取决于情况?

最佳答案

这取决于您的处理方式。如果它受单个CPU线程的约束,并且有多个可用线程,那么可以,它将更快。如果您的代码正在等待数据库,则在数据库支持良好的并行操作的情况下,生成多个副本可能会略有增加。

要考虑的最大问题是,如果在线程之间进行拆分,您的代码是否可以正常工作,或者您是否存在可能导致问题的竞争条件?

10-06 01:26