Partager via


IHostMAlloc::Alloc, méthode

Demande que l'hôte alloue la quantité de mémoire spécifiée à partir du tas.

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

Paramètres

  • cbSize
    [in] Taille, en octets, de la demande d'allocation de mémoire actuelle.

  • dwCriticalLevel
    [in] Une des valeurs EMemoryCriticalLevel, indiquant l'impact d'un échec d'allocation.

  • ppMem
    [out] Pointeur vers la mémoire allouée ou null si la demande n'a pas pu aboutir.

Valeur de retour

HRESULT

Description

S_OK

Alloc a été retourné avec succès.

HOST_E_CLRNOTAVAILABLE

Le Common Language Runtime (CLR) n'a pas été chargé dans un processus ou le CLR présente un état dans lequel il ne peut pas exécuter de code managé ou traiter l'appel avec succès.

HOST_E_TIMEOUT

L'appel a expiré.

HOST_E_NOT_OWNER

L'appelant ne possède pas le verrou.

HOST_E_ABANDONED

Un événement a été annulé alors qu'un thread bloqué ou une fibre l'attendait.

E_FAIL

Une défaillance grave et inconnue s'est produite. Lorsqu'une méthode retourne E_FAIL, le CLR n'est plus utilisable dans le processus. Les appels suivants aux méthodes d'hébergement retournent HOST_E_CLRNOTAVAILABLE.

E_OUTOFMEMORY

Mémoire disponible insuffisante pour satisfaire la demande d'allocation.

Notes

Le CLR obtient un pointeur d'interface vers une instance d'IHostMalloc en appelant la méthode IHostMemoryManager::CreateMalloc.

Configuration requise

Plateformes : consultez Configuration requise du .NET Framework.

En-tête : MSCorEE.h

Bibliothèque : incluse en tant que ressource dans MSCorEE.dll

Versions du .NET Framework : 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Voir aussi

Référence

IHostMemoryManager, interface

IHostMalloc, interface