一般我們發(fā)布項(xiàng)目的時(shí)候通常都會(huì)采用release版本,因?yàn)閞elease會(huì)在jit層面對(duì)我們的il代碼進(jìn)行了優(yōu)化,比如在迭代和內(nèi)存操作的性能提升方面,廢話不多說,
我先用一個(gè)簡單的“冒泡排序”體驗(yàn)下release和debug下面的性能差距。
一:release帶來的閃光點(diǎn)【冒泡排序】
這個(gè)是我多年前寫的算法系列中的一個(gè)冒泡排序的例子,就隨手翻出來展示一下,準(zhǔn)備灌入50000條數(shù)據(jù),這樣就可以執(zhí)行25億次迭代,王健林說,不能太張
狂,幾十億對(duì)我來說不算小意思,算中等意思吧。
1 namespace ConsoleApplication4 2 { 3 class Program 4 { 5 static void Main(string[] args) 6 { 7 var rand = new Random(); 8 List<int> list = new List<int>(); 9 10 for (int i = 0; i < 50000; i++)11 {12 list.Add(rand.Next());13 }14 15 var watch = Stopwatch.StartNew();16 17 try18 {19 BubbleSor