Partager via


IHostMAlloc::DebugAlloc, méthode

Demande que l’hôte d’allouer la quantité de mémoire spécifiée à partir du tas, et d’effectuer le suivi de l’emplacement où la mémoire a été allouée.

Syntaxe

HRESULT DebugAlloc (  
    [in]  SIZE_T  cbSize,
    [in]  EMemoryCriticalLevel dwCriticalLevel,
    [in]  char*   pszFileName,
    [in]  int     iLineNo,
    [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.

pszFileName
[in] Fichier de code de l’exécutable en cours de débogage.

iLineNo
[in] Numéro de ligne dans le fichier pszFileName où l’allocation a été demandée.

ppMem
[out] Pointeur vers la mémoire allouée, ou null si la requête n’a pas pu être terminée.

Valeur de retour

HRESULT Description
S_OK DebugAlloc retourné.
HOST_E_CLRNOTAVAILABLE Le CLR n’a pas été chargé dans un processus ou son état ne lui permet pas d’exécuter du code managé ni de traiter l’appel correctement.
HOST_E_TIMEOUT L’appel a expiré.
HOST_E_NOT_OWNER L’appelant n’est pas propriétaire du verrou.
HOST_E_ABANDONED Un événement a été annulé alors qu’un thread ou une fibre bloqué l’attendait.
E_FAIL Une défaillance catastrophique inconnue s’est produite. Quand une méthode retourne E_FAIL, le CLR n’est plus utilisable au sein du processus. Les appels suivants aux méthodes d’hébergement renvoient HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY Mémoire disponible insuffisante pour finaliser la demande d’allocation.

Notes

Le CLR obtient un pointeur d’interface vers une instance IHostMalloc en appelant la méthode IHostMemoryManager::CreateMalloc. DebugAlloc permet au runtime d’obtenir des informations sur le fichier de code à utiliser pendant le débogage.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : MSCorEE.h

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

Versions de .NET Framework : Disponible depuis la version 2.0

Voir aussi