在C#程序啟動(dòng)時(shí),以下過(guò)程會(huì)依次發(fā)生:
在C#程序啟動(dòng)過(guò)程中,CLR(Common Language Runtime)負(fù)責(zé)管理程序的執(zhí)行。CLR會(huì)負(fù)責(zé)將C#源代碼編譯為中間語(yǔ)言(IL)代碼,并在運(yùn)行時(shí)將IL代碼轉(zhuǎn)換為機(jī)器碼執(zhí)行。CLR還負(fù)責(zé)內(nèi)存管理、異常處理、線程管理等任務(wù)。
總的來(lái)說(shuō),C#程序的啟動(dòng)過(guò)程是由操作系統(tǒng)加載程序到內(nèi)存,CLR執(zhí)行程序入口點(diǎn)(Main方法),執(zhí)行程序邏輯,最后關(guān)閉程序的過(guò)程。