首页 > 代码库 > C#计算一段程序运行时间的三种方法
C#计算一段程序运行时间的三种方法
第一种方法利用System.DateTime.Now:
1 2 3 4 5 6 7 8 9 10 | static void SubTest() { DateTime beforDT = System.DateTime.Now; //耗时巨大的代码 DateTime afterDT = System.DateTime.Now; TimeSpan ts = afterDT.Subtract(beforDT); Console.WriteLine( "DateTime总共花费{0}ms." , ts.TotalMilliseconds); } |
第二种用Stopwatch类(System.Diagnostics):
1 2 3 4 5 6 7 8 9 10 11 | static void SubTest() { Stopwatch sw = new Stopwatch(); sw.Start(); //耗时巨大的代码 sw.Stop(); TimeSpan ts2 = sw.Elapsed; Console.WriteLine( "Stopwatch总共花费{0}ms." , ts2.TotalMilliseconds); } |
第三种用API实现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | [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 SubTest() { 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); } |
C#计算一段程序运行时间的三种方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。