Compartir a través de


IHostMAlloc::Alloc (Método)

Solicita que el host asigne la cantidad de memoria especificada desde el montón.

HRESULT Alloc (
    [in] SIZE_T  cbSize, 
    [in] EMemoryCriticalLevel dwCriticalLevel, 
    [out] void** ppMem
);

Parámetros

  • cbSize
    [in] Tamaño, en bytes, de la solicitud de asignación de memoria actual.

  • dwCriticalLevel
    [in] Uno de los valores de EMemoryCriticalLevel, que indica el impacto de un error de asignación.

  • ppMem
    [out] Puntero a la memoria asignada, o null si no se ha podido completar la solicitud.

Valor devuelto

HRESULT

Descripción

S_OK

Alloc finalizó correctamente.

HOST_E_CLRNOTAVAILABLE

Common Language Runtime (CLR) no se ha cargado en un proceso o está en un estado en el que no puede ejecutar el código administrado o procesar la llamada correctamente.

HOST_E_TIMEOUT

Se agotó el tiempo de espera de la llamada.

HOST_E_NOT_OWNER

El llamador no posee el bloqueo.

HOST_E_ABANDONED

Se canceló un evento mientras una fibra o un subproceso bloqueado estaba esperándole.

E_FAIL

Se ha producido un error catastrófico desconocido. Si un método devuelve E_FAIL, CLR no se puede seguir utilizando en el proceso. Las llamadas subsiguientes a métodos de hospedaje devuelven HOST_E_CLRNOTAVAILABLE.

E_OUTOFMEMORY

No hay suficiente memoria disponible para satisfacer la solicitud de asignación.

Comentarios

CLR obtiene un puntero de interfaz a una instancia de IHostMalloc llamando al método IHostMemoryManager::CreateMAlloc.

Requisitos

Plataformas: vea Requisitos de sistema de .NET Framework.

Encabezado: MSCorEE.h

Biblioteca: Se incluye como recurso en MsCorEE.dll

Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vea también

Referencia

IHostMemoryManager (Interfaz)

IHostMalloc (Interfaz)