Managed 程式碼是什麼

來源:互聯網
上載者:User
C#中的Managed 程式碼是什麼

分析:

Managed 程式碼(Managed Code)實際上就是中繼語言(IL)代碼。

代碼編寫完畢後進行編譯,此時編譯器把代碼編譯成中繼語言(IL),而不是能直接在你的電腦上啟動並執行機器碼。

程式集(Assembly)的檔案負責封裝中繼語言,程式集中包含了描述所建立的方法、類以及屬性的所有中繼資料。

Managed 程式碼在公用語言運行庫(CLR)中運行。這個運行庫給運行代碼提供了多種服務,通常來說,公用語言運行庫可以載入和驗證程式集,並以此來保證中繼語言的正確性。

當某些方法被調用時,公用語言運行庫把具體的方法編譯成適合本機電腦啟動並執行機器碼,並且將編譯好的機器碼緩衝起來,以備下次調用時使用。這個過程就是即時編譯。 

注意:程式實際上是被“託管”在公用語言運行庫中。隨著程式集的運行,公用語言運行庫會持續地提供各種服務,例如記憶體管理、安全管理、線程管理等等。

總結:

Managed 程式碼(Managed Code)是由公用語言運行庫(CLR)執行的代碼,而不是由作業系統直接執行。

Managed 程式碼也可以調用CLR的運行庫服務和功能,比如GC、類型檢查、安全支援等等。這些服務和功能提供獨立與開發語言的、統一的Managed Code應用程式行為。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.