方法一:
DateTime time1 = DateTime.Now;
//do sth
int second = DateTime.Now.Subtract(time1).Seconds;
Console.WriteLine("耗时:" + second);
方法二:
TimeSpan ts1 = new TimeSpan(DateTime.Now.Ticks);
//do sth
TimeSpan ts2 = new TimeSpan(DateTime.Now.Ticks);
TimeSpan ts = ts2.Subtract(ts1).Duration();
Console.WriteLine("耗时:" + ts.Seconds);
在多线程环境下算出来有点不对,采用如下方法就对了:
TimeSpan ts1 = Process.GetCurrentProcess().TotalProcessorTime;
Stopwatch stw = new Stopwatch();
stw.Start();
//do sth
double Msecs = Process.GetCurrentProcess().TotalProcessorTime.Subtract(ts1).TotalMilliseconds;
stw.Stop();
Console.WriteLine(string.Format("耗时={0}", stw.ElapsedTicks));
参考: http://blog.csdn.net/sptoor/article/details/16995199