我有一个类似的有序列表[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
。我将其传递给Parallel.ForEach
声明。我能以某种方式实现以下存储桶执行顺序吗:处理前3个项目[1, 2, 3]
,其中存储桶本身不是强制性的,[2, 1, 3]
例如。然后处理下3个项目[4, 5, 6]
,等等?
我不确定您可以直接执行此操作。但我建议您将输入列表分成较小的列表,然后可以使用来处理每个子列表Parallel.Foreach
。
List<int> fruits = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
List<List<int>> ls = new List<List<int>>();
for (int i = 0; i < fruits.Count; i += 3)
{
ls.Add(fruits.GetRange(i, Math.Min(3, fruits.Count - i)));
}
foreach (List<int> group in ls)
{
Parallel.ForEach(group, fruit =>
{
});
}
小清单的长度是3。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句