Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Costruttore.
CWin32Heap( ) throw( );
CWin32Heap(
HANDLE hHeap
) throw( );
CWin32Heap(
DWORD dwFlags,
size_t nInitialSize,
size_t nMaxSize = 0
);
Parametri
hHeap
Un oggetto esistente dell'heap.dwFlags
Flag utilizzati nella creazione dell'heap.nInitialSize
La dimensione iniziale dell'heap.nMaxSize
La dimensione massima dell'heap.
Note
Prima di allocare memoria, è necessario assegnare l'oggetto CWin32Heap con un handle valido dell'heap.Il modo più semplice per ottenere questo risultato consiste di utilizzare l'heap processo:
CWin32Heap MyHeap(GetProcessHeap());
È anche possibile fornire un handle esistenti dell'heap al costruttore, nel qual caso il nuovo oggetto non assume la direzione della proprietà dell'heap.L'handle originali dell'heap verranno ancora valide quando l'oggetto CWin32Heap viene eliminato.
Un heap esistente può essere associata al nuovo oggetto, utilizzando CWin32Heap::Attach.
Se un heap è richiesta in cui tutte le operazioni vengono eseguite da un singolo thread, la migliore consiste nel creare l'oggetto come segue:
CWin32Heap MyHeap(HEAP_NO_SERIALIZE, SomeInitialSize);
Il parametro HEAP_NO_SERIALIZE specifica che il mutex non verrà utilizzata quando le funzioni heap allocano e liberano memoria, con un aumento di base delle prestazioni.
La terza impostazioni predefinite di parametro su 0, che consente all'heap si sviluppi come richiesto.Vedere HeapCreate per una spiegazione delle capacità di memoria e di flag.
Requisiti
Header: atlmem.h