Condividi tramite


Metodo IHostMemoryManager::GetMemoryLoad

Ottiene la quantità di memoria fisica attualmente utilizzata, e quindi disponibile, come indicato dall'host.

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

Parametri

  • pMemoryLoad
    [out] Puntatore alla percentuale approssimativa della memoria fisica totale attualmente utilizzata.

  • pAvailableBytes
    [out] Puntatore al numero di byte disponibili per Common Language Runtime (CLR).

Valore restituito

HRESULT

Oggetto di descrizione

S_OK

GetMemoryLoad ha restituito correttamente un valore.

HOST_E_CLRNOTAVAILABLE

Common Language Runtime non è stato caricato in un processo oppure si trova in uno stato in cui non è possibile eseguire codice gestito né elaborare correttamente la chiamata.

HOST_E_TIMEOUT

Timeout della chiamata.

HOST_E_NOT_OWNER

Il chiamante non è il proprietario del blocco.

HOST_E_ABANDONED

Un evento è stato annullato mentre un thread o un fiber bloccato era in attesa di tale evento.

E_FAIL

Si è verificato un errore irreversibile sconosciuto. Se un metodo restituisce E_FAIL, CLR non sarà più utilizzabile all'interno del processo. Le successive chiamate ai metodi di hosting restituiranno HOST_E_CLRNOTAVAILABLE.

Note

GetMemoryLoad esegue il wrapping della funzione Win32 GlobalMemoryStatus. Il valore di pMemoryLoad equivale al campo dwMemoryLoad nella struttura MEMORYSTATUS restituita da GlobalMemoryStatus.

Common Language Runtime utilizza il valore restituito come euristica per il Garbage Collector. Ad esempio, se l'host indica che la maggior parte della memoria è in uso, il Garbage Collector può scegliere di effettuare la Garbage Collection da più generazioni in modo da aumentare la quantità di memoria che può diventare potenzialmente disponibile.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: MSCorEE.h

Libreria: inclusa come risorsa in MSCorEE.dll

Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vedere anche

Riferimenti

System.GC

Interfaccia IHostMemoryManager