-
HeapFree
鎖定
HeapFree是一個Windows API函數。它用來釋放堆內存
[1]
- 外文名
- HeapFree
- 釋 義
- Windows API函數
- 作 用
- 釋放堆內存
- 平 台
- Windows
HeapFree語法
BOOL HeapFree(
HANDLE hHeap,
DWORD dwFlags,
LPVOID lpMem
HeapFree參數
hHeap
dwFlags
值 | 意思 |
---|---|
HEAP_NO_SERIALIZE | 串行存取將不會被使用。 為了確保序列化訪問,所有調用這個函數將被禁用,在調用HeapCreate指定HEAP_NO_SERIALIZE。在這種情況下,沒有必要在此函數調用另外指定HEAP_NO_SERIALIZE。 訪問進程堆時沒有指定此值。該系統可以創建應用程序的過程中額外的線程,如CTRL + C處理程序,同時訪問進程堆。 |
lpMem
HeapFree返回值
HeapFree例子
DWORD dirlen = GetLogicalDriveStrings(0,NULL);//獲取磁盤邏輯驅動的大小
LPSTR pdir = (LPSTR) HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,dirlen);//分配堆內存
LPSTR ptmp = pdir; //臨時指針,指向pdir
GetLogicalDriveStrings(dirlen,pdir); //這時候才是獲取主機中的所有盤符給緩衝區dirlen
CString szText;//用於記錄所有盤符
while(*pdir != NULL)
{
szText += pdir;//累加
m_Edit.SetWindowText(szText);//m_Edit為編輯框控件,類型為Control,不是value
pdir = strchr(pdir,NULL)+1;//指針移動
}
HeapFree(hp,HEAP_NO_SERIALIZE,ptmp);//釋放,如果不釋放會繼續增多佔用內存,直到程序結束
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:8次歷史版本
- 最近更新: xhffeng