/////////////////////////////////////////////////////////////////////// private static decimal ClockSpinWait(int loop, int delay) { Stopwatch swatch = new Stopwatch(); swatch.Clock(delegate { for (uint iter = 0; iter < loop; iter++) { ThreadFu.SpinWaitMs(delay); } }); decimal avg = (decimal) swatch.ElapsedMilliseconds / (decimal) loop; decimal prec = Math.Abs(avg - delay) / (decimal) delay; Console.Write("TestSpinWait target: {0} ms; iter: {1}", delay, loop); Console.WriteLine("; avg: {0}", avg); return prec; }