有没有人知道是否有任何重载允许我在Parallel.For循环中指定步长?c#或VB.Net中的样本会很棒.
谢谢,贡萨洛
我想转换一个for循环,它将迭代器的每次递增增加2,使用TPL进入Parallel For循环.数据不依赖于顺序或以任何方式受约束,但我只想处理源数组的每个其他元素中的数据(在下面的代码中是_Datalist),因此需要增加2.
我的For循环:
for (int i = 1; i < _DataList.Length - 1; i += 2)
{
// Do work for _DataList[i]
}
Run Code Online (Sandbox Code Playgroud)
是否有可能告诉并行循环我想要增加2而不是1?
这是并行循环,但显然我每次迭代只增加1:
Task.Factory.StartNew(() =>
Parallel.For(1, _DataList.Length, i =>
{
// do work for _DataList[i]
})
);
Run Code Online (Sandbox Code Playgroud)
我可以告诉内部循环体忽略i的奇数值,但这看起来很麻烦 - 有没有办法在循环初始化中做某种方式?