JIT編譯

JIT 編譯 (JIT compilation),運行時需要代碼時,將 Microsoft 中間語言 (MSIL) 轉換為機器碼的編譯。

基本介紹

interpretation:解釋就是把源程式以句為單位,每句每句的解釋並執行,如果語句出現在循環體當中,比如循環10次,該語句就要被解釋執行10次.不產生目標代碼.
compilation:編譯是把原始碼一次性翻譯成目標代碼,目標代碼可能是可直接運行的機器語言,或是已存在相應翻譯器的不可執行語言.
just-in-time compilation的意思是說,首先仍然是compilation,有caching,不用象解釋那樣把循環體裡面出現的代碼重複解釋;同時有目標機器代碼.這是相對於interpretation的好處.另外相對於static compilation的好處是,在編譯過程對代碼進行最佳化.選擇性的編譯某個函式或任意某段代碼.
JIT具體的做法是這樣的:當載入一個類型時,CLR為該類型創建一個內部數據結構和相應的函式,當函式第一被調用時,JIT將該函式編譯成機器語言.當再次遇到該函式時則直接從cache中執行已編譯好的機器語言.

相關詞條

熱門詞條

聯絡我們