Método IHostMemoryManager::GetMemoryLoad
Obtém a quantidade de memória física que está atualmente a ser utilizada e, portanto, indisponível, conforme comunicado pelo anfitrião.
Sintaxe
HRESULT GetMemoryLoad (
[out] DWORD* pMemoryLoad,
[out] SIZE_T *pAvailableBytes
);
Parâmetros
pMemoryLoad
[fora] Um ponteiro para a percentagem aproximada da memória física total que está atualmente a ser utilizada.
pAvailableBytes
[fora] Um ponteiro para o número de bytes disponíveis para o runtime de idioma comum (CLR).
Devolver Valor
HRESULT | Description |
---|---|
S_OK | GetMemoryLoad devolvido com êxito. |
HOST_E_CLRNOTAVAILABLE | O CLR não foi carregado para um processo ou o CLR está num estado em que não pode executar código gerido ou processar a chamada com êxito. |
HOST_E_TIMEOUT | A chamada excedeu o limite de tempo. |
HOST_E_NOT_OWNER | O autor da chamada não é o proprietário do bloqueio. |
HOST_E_ABANDONED | Um evento foi cancelado enquanto um thread ou fibra bloqueado estava à espera do mesmo. |
E_FAIL | Ocorreu uma falha catastrófica desconhecida. Quando um método devolve E_FAIL, o CLR já não é utilizável no processo. As chamadas subsequentes para métodos de alojamento devolvem HOST_E_CLRNOTAVAILABLE. |
Observações
GetMemoryLoad
molda a função Win32 GlobalMemoryStatus
. O valor de pMemoryLoad
é o equivalente ao dwMemoryLoad
campo na MEMORYSTATUS
estrutura devolvida a partir de GlobalMemoryStatus
.
O runtime utiliza o valor devolvido como heurístico para o recoletor de lixo. Por exemplo, se o anfitrião indicar que a maior parte da memória está a ser utilizada, o recoletor de lixo poderá optar por recolher de várias gerações para aumentar a quantidade de memória que pode potencialmente ficar disponível.
Requisitos
Plataformas: Veja Requisitos do Sistema.
Cabeçalho: MSCorEE.h
Biblioteca: Incluído como um recurso no MSCorEE.dll
.NET Framework Versões: Disponível desde 2.0