• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見(jiàn)諒!~
            隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            在DLL中用CRT靜態(tài)庫(kù)申請(qǐng)內(nèi)存,EXE釋放是不行的

            因?yàn)閙alloc/free,new/delete都是調(diào)用HeapAlloc/HeapFree來(lái)實(shí)現(xiàn)來(lái)實(shí)現(xiàn)內(nèi)存分配是釋放的。

            查看Windows的API可以看到,這兩個(gè)函數(shù)都需要一個(gè)Heap的HANDLE做為參數(shù)。CRT庫(kù)采用了全局變量來(lái)保存這個(gè)HANDLE。如果是CRT靜態(tài)鏈接,CRT庫(kù)的代碼會(huì)鏈接到各個(gè)DLL中去,也包括這個(gè)全局變量。

            也就是說(shuō),每個(gè)使用CRT靜態(tài)鏈接的dll中都有一個(gè)自己的全局堆句柄,他們自己都在這個(gè)句柄上使用內(nèi)存。當(dāng)釋放dll中分配的內(nèi)存時(shí)由于使用的堆句柄不一致于是出錯(cuò)。

             

            當(dāng)使用CRT動(dòng)態(tài)鏈接時(shí),有于每個(gè)dll都是去調(diào)用CRT庫(kù)的dll函數(shù)來(lái)分配和釋放內(nèi)存的,使用的是同一個(gè)句柄,所以就沒(méi)有這個(gè)問(wèn)題

            posted on 2011-05-06 12:33 肥仔 閱讀(545) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): Windows開(kāi)發(fā)

            亚洲人成精品久久久久| 日本国产精品久久| avtt天堂网久久精品| 久久精品国产影库免费看| 久久精品成人欧美大片| 久久中文字幕精品| 久久精品成人免费看| 久久国产免费直播| 91久久成人免费| 色综合久久综合中文综合网| 日韩一区二区三区视频久久| 久久国产亚洲高清观看| 久久久久久精品无码人妻| 国产成人香蕉久久久久| 无码精品久久久天天影视| 亚洲一级Av无码毛片久久精品| 99久久婷婷免费国产综合精品| 久久国产精品99国产精| 久久这里都是精品| 久久亚洲欧洲国产综合| 国产激情久久久久影院| 91精品国产综合久久婷婷| 亚洲AV无码久久精品成人| 亚洲精品tv久久久久| 久久中文字幕无码专区| 久久这里只有精品视频99| 狠狠久久综合伊人不卡| 精品久久久久久久久久久久久久久| 久久ZYZ资源站无码中文动漫| 青草国产精品久久久久久 | 久久99精品国产自在现线小黄鸭 | 狠狠色丁香婷婷久久综合不卡| 99久久夜色精品国产网站| 亚洲综合久久久| 中文字幕无码久久人妻| 7777精品伊人久久久大香线蕉| 久久人人青草97香蕉| 久久久久久久久久久久久久 | 久久综合狠狠综合久久| 亚洲精品国产综合久久一线| 久久人人青草97香蕉|