public static TimeSpan Do(DoSomething doSomething) { DateTime start = DateTime.Now; while (!doSomething.HaveYouFinished()) { object[] results = doSomething.WhatsUp(); // just to say that whe use the results results.ToString(); } DateTime end = DateTime.Now; return(end - start); }