當我們需要統計一段代碼的執行時間,首先想到的可能是Stopwatch類。在這里,先暫不使用Stopwatch,自定義一個統計代碼執行時間的類,大致需要考慮到:
1、確保統計的是當前進程、當前線程中代碼的執行時間。2、在統計執行過程中,不允許有垃圾回收。即在統計代碼執行時間之前,就讓GC完成垃圾回收。
舉例:統計顯示一個數組元素所消耗的時間
class Program{static void Main(string[] args){int[] arrs = new int[10000];BuildArray(arrs);CalculateTiming calculateTiming = new CalculateTiming();calculateTiming.Start();DisplaySomeDigits(arrs);calculateTiming.Stop();Console.WriteLine("所耗費時間為:" + calculateTiming.Result().TotalMilliseconds + "毫秒");}//顯示數組元素static void DisplaySomeDigits(int[] arr){for (int i = 0; i < arr.Length; i++){Console.Write(arr[i] + " ");}}//創建數組static void BuildArray(int[] arr){for (int i = 0; i < arr.Length; i++){arr[i] = i;}}}/// <summary>/// 計算CPU消耗時間/// </summary>public class CalculateTiming{private TimeSpan startTime;private TimeSpan duration;public CalculateTiming(){startTime = new TimeSpan(0);
新聞熱點
疑難解答