内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

C#中間語言和元數(shù)據(jù)是什么

這篇文章主要為大家展示了“C#中間語言和元數(shù)據(jù)是什么”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“C#中間語言和元數(shù)據(jù)是什么”這篇文章吧。

創(chuàng)新互聯(lián)公司成立與2013年,先為蕪湖縣等服務(wù)建站,蕪湖縣等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為蕪湖縣企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

NGWS Runtime

NGWS和NGWS Runtime為你提供了一種運(yùn)行時(shí)環(huán)境。該運(yùn)行時(shí)管理執(zhí)行代碼,并提供了使編程更容易的服務(wù)。只要你的編譯器支持這種運(yùn)行時(shí),你就會(huì)從這種受管理的執(zhí)行環(huán)境中得益。

你猜測(cè)C#編譯器支持NGWS runtime很正確,但是不僅它支持NGWS runtime,VB和C++也支持。這些為支持運(yùn)行時(shí)所創(chuàng)建的代碼稱作"受管代碼"(managed code)。以下是你的應(yīng)用程序從NGWS runtime那里所得到的利益:
◆交叉語言集成(通過通用語言規(guī)范)
◆自動(dòng)內(nèi)存管理(垃圾收集)
◆交叉語言異常處理(統(tǒng)一展開)
◆增強(qiáng)安全(包括類型安全)
◆版本支持("DLL地獄"終結(jié)者)
◆組件交互簡(jiǎn)化模式

因NGWS runtime 要提供了所有的這些好處,編譯器必須把元文件和受管代碼一起發(fā)出。元文件描述代碼中的類型,它和你的代碼存在一起(與PE類似——PE為可變位執(zhí)行文件)

正如你從很多種交叉語言功能所看到的,NGWS runtime主要是關(guān)于高度集成交叉多異編程語言(tight integration across multiple different programming languages)。這種支持可達(dá)到允許你從一個(gè)VB對(duì)象派生出一個(gè)C#類的程度(我后面會(huì)給出要討論的文章)。

C#程序員將會(huì)喜歡的一個(gè)功能是,他們不必?fù)?dān)心內(nèi)存管理-也就是說不必?fù)?dān)心臭名昭著的內(nèi)存泄漏。NGWS runtime提供了內(nèi)存管理,當(dāng)對(duì)象和變量的生命期結(jié)束(不再被引用)時(shí),垃圾收集器釋放它們。我真的喜歡這個(gè)功能,因?yàn)樵贑OM中的內(nèi)存管理一直是我的一塊心病。

應(yīng)該鼓勵(lì)配置一個(gè)管理應(yīng)用程序或者組件。因?yàn)楣芾響?yīng)用程序含有元數(shù)據(jù)文件,NGWS runtime可以利用這些信息,以確保你的應(yīng)用程序具有它所需的各種規(guī)定版本。所產(chǎn)生的明顯效果為,由于你的代碼沒有相互之間的依賴,很少可能出現(xiàn)中斷。

這章余下來討論NGWS runtime的C#中間語言和元數(shù)據(jù),直到你的C#應(yīng)用程序能執(zhí)行為止。

C#中間語言和元數(shù)據(jù)

由C#編譯器生成的受管代碼并不是原始代碼,但它是中間語言代碼。這種中間語言代碼自身變成了NGWS runtime的受管執(zhí)行進(jìn)程的入口。中間語言代碼明顯的優(yōu)勢(shì)在于它是CPU無關(guān)的,這也意味著,你要用目標(biāo)機(jī)器上的一個(gè)編譯器才能把中間語言代碼轉(zhuǎn)換成原始代碼。

盡管中間語言代碼由編譯器產(chǎn)生,但它并不是編譯器提供給運(yùn)行時(shí)僅有的東西。編譯器同樣產(chǎn)生有關(guān)你代碼的元數(shù)據(jù),它告訴運(yùn)行時(shí)有關(guān)你代碼的更多的東西,例如各種類型的定義、各種類型成員的簽名以及其它數(shù)據(jù)?;旧希獢?shù)據(jù)是類型庫、注冊(cè)表內(nèi)容和其它用于COM的信息。盡管如此,元數(shù)據(jù)還是直接和執(zhí)行代碼合并在一起,并不處在隔離的位置。

C#中間語言和元數(shù)據(jù)存放于擴(kuò)展了PE格式的文件中(PE格式用于。exe和。dll文件)。當(dāng)這樣的一個(gè)PE文件被裝載時(shí),運(yùn)行時(shí)從文件中定位和分離出中間語言和元數(shù)據(jù).

在進(jìn)一步說明之前,我想給你已有的中間語言指令的簡(jiǎn)短目錄。盡管它不是一個(gè)完整的清單,也不需要你熟記和理解,但是它列出了你所必需的、C#程序所基于的知識(shí)基礎(chǔ)。
◆算術(shù)和邏輯操作符
◆控制流
◆直接內(nèi)存訪問
◆堆棧操作
◆參數(shù)和局部變量
◆堆棧分配
◆對(duì)象模式
◆實(shí)例類型值
◆臨界區(qū)
◆數(shù)組
◆分型位置
◆即時(shí)編譯器(JITters)

以上是“C#中間語言和元數(shù)據(jù)是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

本文題目:C#中間語言和元數(shù)據(jù)是什么
分享地址:http://www.rwnh.cn/article30/ipcepo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站品牌網(wǎng)站制作、微信小程序商城網(wǎng)站、網(wǎng)站改版、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
双峰县| 尚志市| 调兵山市| 镇原县| 北安市| 辉南县| 淳安县| 堆龙德庆县| 咸丰县| 二连浩特市| 大丰市| 巴东县| 阿坝县| 曲水县| 桂东县| 白朗县| 桓仁| 收藏| 寿宁县| 博爱县| 定南县| 栾川县| 长泰县| 永福县| 江津市| 阳原县| 肇源县| 芦溪县| 乐安县| 天长市| 南平市| 利川市| 静安区| 青冈县| 永嘉县| 富平县| 宁国市| 上饶市| 长春市| 长寿区| 丽水市|