假设您有一个LINQ查询
source.AsParallel().Where(expensiveOperation).Select(cheapOperation)
我想在这种情况下,Select也以并行执行模式运行.也许它只是一个便宜的操作,如i => i * 2,有没有办法在链接方法的查询点停止并行执行?
(也许像.AsParallel().Where(expensiveOp).AsSerial?().选择(cheapOp)?)
解决方法
您正在寻找的操作是
AsSequential
.
source.AsParallel().Where(expensiveOp).AsSequential().Select(cheapOp)