[ASP.NET] 如何追蹤執行時所花費時間

【Stopwatch】提供較高精確度的計量,如果硬體和OS支援高解析度效能計數器,Stopwatch 類別會使用該計數器來測量已耗用時間。
不然,Stopwatch 類別會使用系統計時器來測量已耗用時間,並且可重複呼叫Start及Stop方法,來累積更多執行區間所耗用時間,然後利用【Elapsed】屬性取得累積耗用時間。

為了方便在線上環境追蹤執行狀況,可利用 #if DEBUG 搭配 Stopwatch,埋一些追蹤的code,只要將 web.config 的 debug mode 設定為 true,就可以輸出執行時間,再將 debug mode 設定為 false,就可以隱藏執行時間,類似作法如下。

【Stopwatch】提供較高精確度的計量,如果硬體和OS支援高解析度效能計數器,Stopwatch 類別會使用該計數器來測量已耗用時間。
不然,Stopwatch 類別會使用系統計時器來測量已耗用時間,並且可重複呼叫Start及Stop方法,來累積更多執行區間所耗用時間,然後利用【Elapsed】屬性取得累積耗用時間。

為了方便在線上環境追蹤執行狀況,可利用 #if DEBUG 搭配 Stopwatch,埋一些追蹤的code,只要將 web.config 的 debug mode 設定為 true,就可以輸出執行時間,再將 debug mode 設定為 false,就可以隱藏執行時間,類似作法如下。

 


            //#if DEBUG 搭配 Stopwatch
#if DEBUG
            System.Diagnostics.Stopwatch sw = new System.Diagnostics.Stopwatch();
            sw.Start();
#endif

            // code
            System.Threading.Thread.Sleep(100);

#if DEBUG
            sw.Stop();
            Response.Write(sw.Elapsed.TotalSeconds.ToString());
#endif

 

引用來源:http://www.dotblogs.com.tw/asdtey/archive/2009/10/23/dotnettracetime.aspx