Compartir vía


IHostMAlloc::Alloc (Método)

Solicita al host que asigne la cantidad de memoria especificada del montón.

Sintaxis

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 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 se devolvió correctamente.
HOST_E_CLRNOTAVAILABLE El Common Language Runtime (CLR) no se ha cargado en un proceso o se encuentra en un estado en el que no puede ejecutar 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 autor de la llamada no es el propietario del bloqueo.
HOST_E_ABANDONED Se canceló un evento mientras que una fibra o subproceso que estaba bloqueado lo estaba esperando.
E_FAIL Ocurrió un error grave desconocido. Si un método devuelve el valor E_FAIL, el CLR ya no se podrá usar en el proceso. Las llamadas que se hagan a los métodos de hospedaje posteriormente devolverán el valor HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY No ha habido suficiente memoria disponible para completar 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.

Encabezado: MSCorEE.h

Biblioteca: incluida como recurso en MSCorEE.dll

Versiones de .NET Framework: disponible a partir de la versión 2.0

Consulte también