Aspectacular.Test.RunCounter.Spin C# (CSharp) Method

Spin() public static method

Counts how many time certain function was executed in a given time span.
public static Spin ( long millisecondsToRun, System.Action funcToTest ) : long
millisecondsToRun long
funcToTest System.Action
return long
        public static long Spin(long millisecondsToRun, Action funcToTest)
        {
            long count = 0, elapsed;

            DateTime start = DateTime.UtcNow;

            do
            {
                funcToTest();
                count++;
                elapsed = (long)(DateTime.UtcNow - start).TotalMilliseconds;
            } while(elapsed < millisecondsToRun);

            Debug.WriteLine("Ran \"{0}\" {1:#,#} times in {2:#,#} milliseconds.", funcToTest, count, millisecondsToRun);

            return count;
        }