更新時間:2023年11月07日13時54分 來源:傳智教育 瀏覽次數(shù):
使用C#進行程序開發(fā)時,不僅要了解C#的特點,還需要了解C#程序的運行機制。下面通過一張圖描述C#程序在NET Framework中編譯和運行的過程,如圖所示。
圖中,程序的運行過程分為兩個時期,分別是編譯期和運行期。在編譯期,CLR對C#代碼進行第一次編譯,將編寫的代碼編譯成dll文件或.exe文件,此時代碼被編譯為通用中間語言(Common lntemmediate Language,CIL)。在運行期,CLR會針對目前特定的硬件環(huán)境使用即時編譯(Just-in-Time,JIT),也就是將CIL.編譯成本機代碼并執(zhí)行。需要說明的是,在運行期,CLR將編譯后的代碼放人一個緩沖區(qū)中,當(dāng)再次運行程序,如果使用相同的代碼時,會直接從緩沖區(qū)調(diào)用編譯后的代碼。也就是說,相同的代碼只會編譯一次,從而提高C#程序的運行速度。