国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 課堂 > 技術(shù)開發(fā) > 正文

動態(tài)鏈接庫簡介

2023-06-23 14:40:26
字體:
供稿:網(wǎng)友

你是否有過這樣的經(jīng)歷,在配置不是很好的機(jī)器上運行一些不是很完善的Windows 應(yīng)用程序,系統(tǒng)速度越來越慢,直至彈出一個警告對話框,系統(tǒng)資源嚴(yán)重不足請關(guān)閉部分Windows 應(yīng)用程序,這往往是靜態(tài)鏈接的緣故。使用普通的函數(shù)庫,在程序鏈接時將庫中的代碼拷貝到可執(zhí)行文件中這叫作靜態(tài)鏈接。假設(shè)有多個程序同時執(zhí)行并且都調(diào)用了同一個動態(tài)鏈接庫,這時內(nèi)存中就會保留許多重復(fù)的代碼副本。

使用動態(tài)鏈接庫則不一樣,只有程序在執(zhí)行時才將庫代碼裝入內(nèi)存,對于同一個動態(tài)鏈接庫無論有多少個應(yīng)用程序同時在使用它,內(nèi)存中都只有一個動態(tài)鏈接庫的副本。如果動態(tài)鏈接庫不再被任何程序使用,系統(tǒng)就將它調(diào)出內(nèi)存,這就減少了應(yīng)用程序?qū)?nèi)存的要求。

動態(tài)鏈接庫是一種程序模塊,它不僅可以包含可執(zhí)行代碼,而且通常還包含了各種類型的預(yù)定義的數(shù)據(jù)和資源,擴(kuò)大了庫文件的使用范圍。Windows 操作系統(tǒng)使用了許多動態(tài)鏈接庫,比如我們使用Visual C++建立MFC 應(yīng)用程序時,如果在AppWizard向?qū)е羞x擇了使用MFC 作為動態(tài)鏈接庫,那么所有這種類型的程序至少都共用了C:/Windows/System 目錄下的MFC 動態(tài)鏈接庫文件Msvcrt.dll 和Mfc42.dll ,許多設(shè)備的驅(qū)動程序也是用動態(tài)鏈接庫實現(xiàn)的,擴(kuò)展名一般為.drv。動態(tài)鏈接庫技術(shù)常常用于開發(fā)大型軟件系統(tǒng),一個大型系統(tǒng)如果只通過一個可執(zhí)行文件來完成那程序就太龐大了,而且可能有許多重復(fù)的功能,這時如果將程序分解由一系列主程序和動態(tài)鏈接庫組成,這就減少了開發(fā)難度和工作量,提高了訪問的速度,更有利于對整個系統(tǒng)的管理。

動態(tài)鏈接庫的另一個用途是,軟件產(chǎn)品國際化開發(fā)人員可以將依賴于各國語言的資源分離開來各自放進(jìn)專門的動態(tài)鏈接庫中,各國不同的用戶可以在安裝和運行時選擇適當(dāng)語言版本的動態(tài)鏈接庫,這樣主程序不用改變就可以用于全球范圍。這是實現(xiàn)軟件國際化的一項技術(shù),知道了動態(tài)鏈接庫的這些特點,相信讀者不難明白為什么動態(tài)鏈接庫的應(yīng)用那么廣泛了。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 都江堰市| 婺源县| 靖边县| 丰镇市| 祁东县| 江城| 普兰店市| 平和县| 类乌齐县| 平顶山市| 闸北区| 莒南县| 南溪县| 探索| 波密县| 兴安县| 确山县| 浙江省| 方正县| 镇坪县| 蚌埠市| 晋中市| 湖北省| 彭阳县| 五华县| 双江| 阿城市| 仙桃市| 勐海县| 新源县| 兴和县| 合阳县| 河北省| 文水县| 介休市| 霞浦县| 甘谷县| 岢岚县| 拉萨市| 得荣县| 宝坻区|