使用AsOrdered c#时设置并行度
本文关键字:设置 并行度 AsOrdered 使用 | 更新日期: 2023-09-27 18:26:14
我得到以下错误"只能对AsParallel、ParallelEnumerable.Range或ParallelEnumerable.Repeat的结果调用AsOrdered"
运行以下代码时
myListofActions.AsParallel().WithDegreeOfParallelism(threadCount)
.AsOrdered().ForAll(x => DoMyTask(x));
该代码运行良好
myListofActions.AsParallel().AsOrdered().ForAll(x => DoMyTask(x));
在这种情况下,有没有办法设置WithDegreeOfParallelism?
提前感谢
试试这个:
myListofActions.AsParallel()
.AsOrdered()
.WithDegreeOfParallelism(Math.Min(threadCount, Environment.ProcessorCount))
.ForAll(DoMyTask);