Freigeben über


IHostMemoryManager::GetMemoryLoad-Methode

Ruft die Menge an physischem Arbeitsspeicher ab, der gegenwärtig verwendet wird und daher laut Host nicht verfügbar ist.

HRESULT GetMemoryLoad (
    [out] DWORD*  pMemoryLoad, 
    [out] SIZE_T  *pAvailableBytes
);

Parameter

  • pMemoryLoad
    [out] Ein Zeiger auf die ungefähre Menge an gegenwärtig verwendetem physischen Speicher in Prozent.

  • pAvailableBytes
    [out] Ein Zeiger auf die Anzahl der für die Common Language Runtime (CLR) verfügbaren Bytes.

Rückgabewert

HRESULT

Beschreibungen

S_OK

GetMemoryLoad 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.

Hinweise

GetMemoryLoad umschließt die Win32 GlobalMemoryStatus-Funktion. Der Wert von pMemoryLoad entspricht dem dwMemoryLoad-Feld in der MEMORYSTATUS-Struktur, die von GlobalMemoryStatus zurückgegeben wird.

Die Laufzeit verwendet den Rückgabewert als Heuristik für den Garbage Collector. Wenn z. B. der Host meldet, dass der Großteil des Arbeitsspeichers verwendet wird, kann eine Garbage Collection über mehrere Generationen durchgeführt werden, um die Menge an Arbeitsspeicher zu erhöhen, die potenziell verfügbar gemacht werden kann.

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

System.GC

IHostMemoryManager-Schnittstelle