public void For(int minimum, int maximum, int skip, Action <int> action, IndexedJobEstimator estimator) { if (maximum < minimum) { int t = maximum; maximum = minimum; minimum = t; } if (skip < 0) { skip = -skip; } else if (skip == 0) { throw new ArgumentNullException("skip"); } for (int i = minimum; i < maximum; i += skip) { Int32 temp = i; jobs.Add(new EstimatableDelegateJob( delegate() { action(temp); }, delegate(InstructionPerformance perf, FPUPerformance fpu) { return(estimator(temp, perf, fpu)); })); } }
public void For(int minimum, int maximum, Action <int> action, IndexedJobEstimator estimator) { if (maximum < minimum) { int t = maximum; maximum = minimum; minimum = t; } for (int i = minimum; i < maximum; i++) { Int32 temp = i; // Console.Out.WriteLine("Enqueue: {0}", i); jobs.Add(new EstimatableDelegateJob( delegate() { action(temp); }, delegate(InstructionPerformance perf, FPUPerformance fpu) { return(estimator(temp, perf, fpu)); })); } }