Compartir a través de


Clase CLocalHeap

Esta clase implementa IAtlMemMgr mediante las funciones de montón local de Win32.

Importante

Esta clase y sus miembros no se pueden usar en las aplicaciones que se ejecutan en Windows Runtime.

Sintaxis

class CLocalHeap : public IAtlMemMgr

Miembros

Métodos públicos

Nombre Descripción
CLocalHeap::Allocate Llame a este método para asignar un bloque de memoria.
CLocalHeap::Free Llame a este método para liberar un bloque de memoria asignado por este administrador de memoria.
CLocalHeap::GetSize Llame a este método para obtener el tamaño asignado de un bloque de memoria asignado por este administrador de memoria.
CLocalHeap::Reallocate Llame a este método para reasignar la memoria asignada por este administrador de memoria.

Comentarios

CLocalHeap implementa funciones de asignación de memoria mediante las funciones de montón local de Win32.

Nota:

Las funciones de montón local son más lentas que otras funciones de administración de memoria y no proporcionan tantas características. Por lo tanto, las nuevas aplicaciones deben usar las funciones del montón. Están disponibles en la clase CWin32Heap.

Ejemplo

Vea el ejemplo de IAtlMemMgr.

Jerarquía de herencia

IAtlMemMgr

CLocalHeap

Requisitos

Encabezado: atlmem.h

CLocalHeap::Allocate

Llame a este método para asignar un bloque de memoria.

virtual __declspec(allocator) void* Allocate(size_t nBytes) throw();

Parámetros

nBytes
Número de bytes solicitado en el nuevo bloque de memoria.

Valor devuelto

Devuelve un puntero al principio del bloque de memoria recién asignado.

Comentarios

Llame a CLocalHeap::Free o CLocalHeap::Reallocate para liberar la memoria que se asignó mediante este método.

Implementado mediante LocalAlloc con un parámetro de marca de LMEM_FIXED.

CLocalHeap::Free

Llame a este método para liberar un bloque de memoria asignado por este administrador de memoria.

virtual void Free(void* p) throw();

Parámetros

p
Puntero a la memoria previamente asignada por este administrador de memoria. NULL es un valor válido y no hace nada.

Comentarios

Implementado mediante LocalFree.

CLocalHeap::GetSize

Llame a este método para obtener el tamaño asignado de un bloque de memoria asignado por este administrador de memoria.

virtual size_t GetSize(void* p) throw();

Parámetros

p
Puntero a la memoria previamente asignada por este administrador de memoria.

Valor devuelto

Devuelve el tamaño del bloque de memoria asignado en bytes.

Comentarios

Implementado mediante LocalSize.

CLocalHeap::Reallocate

Llame a este método para reasignar la memoria asignada por este administrador de memoria.

virtual __declspec(allocator) void* Reallocate(void* p, size_t nBytes) throw();

Parámetros

p
Puntero a la memoria previamente asignada por este administrador de memoria.

nBytes
Número de bytes solicitado en el nuevo bloque de memoria.

Valor devuelto

Devuelve un puntero al principio del bloque de memoria recién asignado.

Comentarios

Llame a CLocalHeap::Free para liberar la memoria asignada por este método.

Implementado mediante LocalReAlloc.

Consulte también

Información general sobre la clase
CComHeap (clase)
CWin32Heap (clase)
CGlobalHeap (clase)
CCRTHeap (clase)
IAtlMemMgr (clase)