Google для "enumerable.range step", и вы должны быть в состоянии найти альтернативные реализации Enumerable.Range, которые предоставляют ступенчатые диапазоны.Тогда вы можете просто сделать
Parallel.ForEach(BetterEnumerable.SteppedRange(fromInclusive, toExclusive, step), ...)
Если Google не работает, реализация должна выглядеть примерно так:
public static class BetterEnumerable {
public static IEnumerable<int> SteppedRange(int fromInclusive, int toExclusive, int step) {
for (var i = fromInclusive; i < toExclusive; i += step) {
yield return i;
}
}
}
В качестве альтернативы, если "yield return" дает один хиби джиби,Вы всегда можете просто создать обычный старый список на месте:
var list = new List<int>();
for (int i = fromInclusive; i < toExclusive; i += step) {
list.Add(i);
}
Parallel.ForEach(list, ...);
Это должно быть легко переведено на VB, если это требуется.