65.9K
CodeProject is changing. Read more.
Home

How to measure execution time with C#

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.86/5 (5 votes)

Dec 12, 2011

CPOL
viewsIcon

16772

Code that measures a time interval as you would measure the execution time of a task

This C# code measures a time interval as you would measure the execution time of a task:

DateTimestartTime=DateTime.Now;
Console.WriteLine("Started:{0",startTime);
//Executethetasktobetimed
for(int i=1;i<100000;i++)
{
    //Executethetasktobetimed
}
DateTime stopTime = DateTime.Now;
Console.WriteLine("Stopped:{0",stopTime);
TimeSpanelapsedTime=stopTime-startTime;
Console.WriteLine("Elapsed:{0",elapsedTime);
Console.WriteLine("inhours:"+elapsedTime.TotalHours);
Console.WriteLine("inminutes:"+elapsedTime.TotalMinutes);
Console.WriteLine("inseconds:"+elapsedTime.TotalSeconds);
Console.WriteLine("inmilliseconds:"+elapsedTime.TotalMilliseconds);

In C# 2.0, the same thing can be done as follows:

Stopwatchwatch=newStopwatch();
watch.Start();
for(inti=1;i<1000000;i++)
{
    //Executethetasktobetimed
}
watch.Stop();
Console.WriteLine("Elapsed:{0",watch.Elapsed);
Console.WriteLine("Inmilliseconds:{0",watch.ElapsedMilliseconds);
Console.WriteLine("Intimerticks:{0",watch.ElapsedTicks);

For DateTime formatting options, refer to Format date and time.

alternatively you may also try http://msdn.microsoft.com/en-us/library/ff650674.aspx[^]