Sdílet prostřednictvím


CWin32Heap::CWin32Heap

Konstruktor.

CWin32Heap( ) throw( ); 
CWin32Heap(
   HANDLE hHeap 
) throw( );
CWin32Heap(
   DWORD dwFlags,
   size_t nInitialSize,
   size_t nMaxSize = 0 
);

Parametry

  • hHeap
    Existující objekt haldy.

  • dwFlags
    Příznaky používané při vytváření haldy.

  • nInitialSize
    Počáteční velikost haldy.

  • nMaxSize
    Maximální velikost haldy.

Poznámky

Před přidělením paměti, je nezbytné stanovit CWin32Heap objektu s popisovačem haldy platný.Nejjednodušším způsobem, jak toho dosáhnout, je použití haldy procesu:

CWin32Heap MyHeap(GetProcessHeap());   

Je také možné zadat existující popisovač haldy konstruktoru, ve kterém případě nový objekt není převzít vlastnictví haldy.Původní zpracování haldy bude stále platné při CWin32Heap objekt je odstraněn.

Existující haldy lze také připojit do nového objektu pomocí CWin32Heap::Attach.

Pokud je požadováno haldu kde operace jsou prováděny z jediného podprocesu nejlepší způsob je vytvořit objekt takto:

CWin32Heap MyHeap(HEAP_NO_SERIALIZE, SomeInitialSize);   

Parametr HEAP_NO_SERIALIZE Určuje, že vzájemné vyloučení nebude použita při přidělení haldy funkce a uvolnit paměť s according nárůst výkonu.

Třetí parametr výchozí 0, což umožňuje haldy růst jako nezbytné.Viz HeapCreate vysvětlení velikosti paměti a příznaky.

Požadavky

Záhlaví: atlmem.h

Viz také

Referenční dokumentace

Třída CWin32Heap

HeapCreate