您的位置:首页 > 编程语言 > C#

C#计算程序运行时间的三种代码方式

2018-08-13 16:01 246 查看

 

第一种方法利用System.DateTime.Now

[code]static void Test()  {
DateTime before = System.DateTime.Now;
//耗时巨大的代码
DateTime after = System.DateTime.Now;
TimeSpan t = after.Subtract(before);
Console.WriteLine("DateTime总共花费{0}ms.", t.TotalMilliseconds);
}

 

第二种用Stopwatch类(System.Diagnostics)

[code]static void Test()  {
Stopwatch sw = new Stopwatch();
sw.Start();
//耗时巨大的代码
sw.Stop();
TimeSpan t = sw.Elapsed;
Console.WriteLine("Stopwatch总共花费{0}ms.", t.TotalMilliseconds);
}

 

第三种用API实现:

[code][System.Runtime.InteropServices.DllImport("Kernel32.dll")]
static extern bool QueryPerformanceCounter(ref long count);  [System.Runtime.InteropServices.DllImport("Kernel32.dll")]
static extern bool QueryPerformanceFrequency(ref long count);
static void Test()  {
long count = 0;
long count1 = 0;
long freq = 0;
double result = 0;
QueryPerformanceFrequency(ref freq);
QueryPerformanceCounter(ref count);
//耗时巨大的代码
QueryPerformanceCounter(ref count1);
count = count1 - count;
result = (double)(count) / (double)freq;
Console.WriteLine("QueryPerformanceCounter耗时: {0} 秒", result);
}
阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: