अपने बेंचमार्किंग कोड को उपयोगिता वर्ग / विधि में धकेलना उपयोगी है। StopWatch
वर्ग होने की जरूरत नहीं है Disposed
या Stopped
त्रुटि पर। तो, सबसे सरल कोड के लिए समय कुछ कार्रवाई है
public partial class With
{
public static long Benchmark(Action action)
{
var stopwatch = Stopwatch.StartNew();
action();
stopwatch.Stop();
return stopwatch.ElapsedMilliseconds;
}
}
नमूना कॉलिंग कोड
public void Execute(Action action)
{
var time = With.Benchmark(action);
log.DebugFormat(“Did action in {0} ms.”, time);
}
यहाँ विस्तार विधि संस्करण है
public static class Extensions
{
public static long Benchmark(this Action action)
{
return With.Benchmark(action);
}
}
और सैंपल कॉलिंग कोड
public void Execute(Action action)
{
var time = action.Benchmark()
log.DebugFormat(“Did action in {0} ms.”, time);
}