C#獲得程序運行時間


一、前言

  有時候為了知道一段代碼的運行效率,我們想知道某段代碼運行所耗費的時間,這時可以用Stopwatch類,需要引用System.Diagnostics;

二、測試程序

  Stopwatch的功能非常簡單,它之后一個不帶參數的構造方法,構造出對象后調用Start方法即可讓計時器開始運行,調用Stop方法讓計數器停止運行,Elapsed屬性記錄的就是時間,測試程序如下:

using System;
using System.Diagnostics;

namespace test
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = "";
            Stopwatch sw = new Stopwatch();

            sw.Start();
      
            for (int i = 0; i < 100000; i++)
            {
                s += i;
            }
            sw.Stop();

            Console.WriteLine(sw.Elapsed);
            Console.ReadKey();
        }
    }
}

  運行結果:

  

 

   可以知道被sw.Start();和sw.Stop();包夾的那段代碼運行時間為16秒多。代碼第21行Elapsed屬性得到的是TimeSpan對象,如果用Console.WriteLine()輸出的話得到的是“時:分:秒.毫秒”格式,如果換成ElapsedMilliseconds屬性那得到的就是毫秒時間,如果用ElapsedTicks得到的是節拍數。將節拍數除以Frequency得到的就是時間,單位:秒。注意Frequency是靜態字段,要直接通過類名訪問,不能通過對象名訪問。

  其他功能也比較簡單,通過類定義一看就知道。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM