在.Net 4.0以後的版本,提供了一個類,該類在 System.Diagnostics命名空間下,使用該類就可以計算出執行結果相同的兩端代碼的效率,在代碼優化上是很實用的。 泛型效率是高是低呢??我們來測試下,代碼如下: 經過上述執行,我們可以把我們程式框架裡面的幫助類都改成泛型的。 ...
在.Net 4.0以後的版本,提供了一個類,該類在 System.Diagnostics命名空間下,使用該類就可以計算出執行結果相同的兩端代碼的效率,在代碼優化上是很實用的。
泛型效率是高是低呢??我們來測試下,代碼如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp1 { class Program { static void Main(string[] args) { { Console.WriteLine("\r\n"); System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch(); watch.Start(); for (int i = 0; i < 10000000; i++) { ShowObj(123); } Console.WriteLine("object方法執行毫秒數"+watch.ElapsedMilliseconds); watch.Stop(); } { System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch(); watch.Start(); for (int i = 0; i < 10000000; i++) { ShowGeneric(123); } Console.WriteLine("泛型方法執行毫秒數"+watch.ElapsedMilliseconds); watch.Stop(); } Console.Read(); } public static void ShowObj(object obj) { string str = "123"; } public static void ShowGeneric<T>(T t) { string str = "123"; } } }
經過上述執行,我們可以把我們程式框架裡面的幫助類都改成泛型的。