Hvert program , der kører på din computer bruger hukommelse. Den " dynge" er det område af hukommelse, der bruges til dynamisk allokering af hukommelse . I et C-program , er objekter placeret på "dynge " og indbyggede datatyper såsom heltal og lange er placeret på " stakken. " The stak er et mindre, hurtigere område af hukommelsen , der er tildelt af sidste ind, først ud . Global og statiske variabler også er gemt på "dynge ", og forbliver i hukommelsen, indtil programmet er færdig. Størrelsen af den bunke er en foruddefineret antal sider , men kan flere sider tildeles bunke. Instruktioner
1
Ge håndtaget til standard bunke af den kaldende proces i din C-program ved hjælp af " GetProcessHeap . " Definer en variabel til at holde håndtaget kaldet " hHandle . " Hvis " hHandle "er null, kalder" GetLastError "for at få den manglende meddelelse.
2
Brug af" hHandle " kalde" HeapAlloc "for at tildele hukommelse til denne proces" bunke. Serialisering sikrer, at to tråde ikke få adgang til den samme blok af hukommelse , og derfor kun bruge " HEAP_NO_SERIALIZE " parameter , når programmet kun har én tråd eller programmet håndterer sine egne gevind opkald til hukommelsen bunke. Du vil også nødt til at passere det antal bytes til at tildele til " HeapAlloc ".
3
" VirtualAlloc " for at reservere en blok sider for processen. Du kan foretage yderligere opkald til " VirtualAlloc " at begå enkelte sider , så ikke at forbruge lagerplads indtil den kørende proces brug it.To allokere hukommelse der er som standard til nul og giver læse /skrive adgang til engagerede regioner af siderne , : DWORD dsize = 468178553 , VirtualAlloc ( NULL, dsize , MEM_COMMIT , PAGE_READWRITE )