IHostMemoryManager::GetMemoryLoad-Methode
Ruft die Menge des physischen Arbeitsspeichers ab, der derzeit verwendet wird und daher nicht verfügbar ist, wie vom Host gemeldet.
Syntax
HRESULT GetMemoryLoad (
[out] DWORD* pMemoryLoad,
[out] SIZE_T *pAvailableBytes
);
Parameter
pMemoryLoad
[out] Ein Zeiger auf den ungefähren Prozentsatz des gesamten physischen Arbeitsspeichers, der derzeit verwendet wird.
pAvailableBytes
[out] Ein Zeiger auf die Anzahl der Bytes, die für die Common Language Runtime (CLR) verfügbar sind.
Rückgabewert
HRESULT | BESCHREIBUNG |
---|---|
S_OK | GetMemoryLoad wurde erfolgreich zurückgegeben. |
HOST_E_CLRNOTAVAILABLE | Die CLR wurde nicht in einen Prozess geladen, oder die CLR befindet sich in einem Zustand, in dem sie keinen verwalteten Code ausführen oder den Aufruf nicht erfolgreich verarbeiten kann. |
HOST_E_TIMEOUT | Timeout des Aufrufs. |
HOST_E_NOT_OWNER | Der Aufrufer besitzt die Sperre nicht. |
HOST_E_ABANDONED | Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine blockierte Fiber darauf gewartet hat. |
E_FAIL | Es ist ein unbekannter katastrophaler Fehler aufgetreten. Wenn eine Methode E_FAIL zurückgibt, kann die CLR nicht mehr innerhalb des Prozesses verwendet werden. Nachfolgende Aufrufe von Hostingmethoden geben HOST_E_CLRNOTAVAILABLE zurück. |
Bemerkungen
GetMemoryLoad
umschließt die GlobalMemoryStatus
-Win32-Funktion. Der Wert von pMemoryLoad
entspricht dem dwMemoryLoad
-Feld in der MEMORYSTATUS
-Struktur, die von GlobalMemoryStatus
zurückgegeben wird.
Die Runtime verwendet den Rückgabewert als Heuristik für den Garbage Collector. Wenn der Host beispielsweise meldet, dass der Großteil des Arbeitsspeichers verwendet wird, kann der Garbage Collector mehrere Generationen sammeln, um die Menge an Arbeitsspeicher zu erhöhen, die möglicherweise verfügbar werden kann.
Anforderungen
Plattformen: Informationen finden Sie unter Systemanforderungen.
Header: MSCorEE.h
Bibliothek: Als Ressource in „MsCorEE.dll“ enthalten.
.NET Framework-Versionen: Seit 2.0 verfügbar.