国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 达州市| 义马市| 永兴县| 咸宁市| 会理县| 金湖县| 巫山县| 高雄市| 皋兰县| 长武县| 张家口市| 平南县| 平遥县| 托克逊县| 友谊县| 桂阳县| 祁阳县| 广宁县| 正镶白旗| 温宿县| 鸡泽县| 岫岩| 潍坊市| 读书| 富民县| 巫溪县| 阜阳市| 邯郸县| 桐梓县| 长子县| 崇明县| 沅江市| 永济市| 当涂县| 岳普湖县| 凉山| 土默特右旗| 改则县| 苍南县| 巩义市| 南木林县|