Freigeben über


IHostMAlloc::DebugAlloc-Methode

Fordert an, dass der Host die angegebene Größe des Speichers aus dem Heap belegt und außerdem nachverfolgt, wo der Speicher belegt wurde.

HRESULT DebugAlloc (
    [in]  SIZE_T  cbSize, 
    [in]  EMemoryCriticalLevel dwCriticalLevel, 
    [in]  char*   pszFileName, 
    [in]  int     iLineNo, 
    [out] void**  ppMem
);

Parameter

  • cbSize
    [in] Die Größe der aktuellen Speicherbelegungsanforderung in Bytes.

  • dwCriticalLevel
    [in] Einer der EMemoryCriticalLevel-Werte, der die Auswirkungen eines Belegungsfehlers angibt.

  • pszFileName
    [in] Die Codedatei der ausführbaren Datei, die gedebuggt wird.

  • iLineNo
    [in] Die Zeilennummer in pszFileName, in der die Belegung angefordert wurde.

  • ppMem
    [out] Ein Zeiger auf den belegten Arbeitsspeicher oder NULL, wenn die Anforderung nicht abgeschlossen werden konnte.

Rückgabewert

HRESULT

Beschreibungen

S_OK

DebugAlloc erfolgreich zurückgegeben.

HOST_E_CLRNOTAVAILABLE

Die CLR wurde nicht in einen Prozess geladen oder befindet sich in einem Zustand, in dem sie weder verwalteten Code ausführen noch den Aufruf erfolgreich verarbeiten kann.

HOST_E_TIMEOUT

Der Aufruf hat das Zeitlimit überschritten.

HOST_E_NOT_OWNER

Der Aufrufer ist nicht Besitzer der Sperre.

HOST_E_ABANDONED

Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine blockierte Fiber auf das Ereignis gewartet hat.

E_FAIL

Ein unbekannter, schwerwiegender Fehler ist aufgetreten. Wenn eine Methode E_FAIL zurückgibt, kann die CLR innerhalb des Prozesses nicht mehr verwendet werden. Nachfolgende Aufrufe von Hostmethoden geben HOST_E_CLRNOTAVAILABLE zurück.

E_OUTOFMEMORY

Zur Erfüllung der Belegungsanforderung war nicht genügend Arbeitsspeicher verfügbar.

Hinweise

Die CLR ruft einen Schnittstellenzeiger auf eine IHostMalloc-Instanz ab, indem sie die IHostMemoryManager::CreateMalloc-Methode aufruft. DebugAlloc ermöglicht es der Laufzeit, während des Debuggings Codedateiinformationen zur Verwendung abzurufen.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: MSCorEE.h

Bibliothek: als Ressource in MSCorEE.dll enthalten

.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Siehe auch

Referenz

IHostMemoryManager-Schnittstelle

IHostMalloc-Schnittstelle