IHostMemoryManager::GetMemoryLoad (Método)
Obtiene la cantidad de memoria física que se está utilizando actualmente y, por lo tanto, no está disponible, tal y como notifica el host.
HRESULT GetMemoryLoad (
[out] DWORD* pMemoryLoad,
[out] SIZE_T *pAvailableBytes
);
Parámetros
pMemoryLoad
[out] Puntero al porcentaje aproximado de memoria física total que se está utilizando actualmente.pAvailableBytes
[out] Puntero al número de bytes a disposición de Common Language Runtime (CLR).
Valor devuelto
HRESULT |
Descripción |
---|---|
S_OK |
GetMemoryLoad finalizó correctamente. |
HOST_E_CLRNOTAVAILABLE |
CLR no se ha cargado en un proceso o está en un estado en el que no puede ejecutar el código administrado o procesar la llamada correctamente. |
HOST_E_TIMEOUT |
Se agotó el tiempo de espera de la llamada. |
HOST_E_NOT_OWNER |
El llamador no posee el bloqueo. |
HOST_E_ABANDONED |
Se canceló un evento mientras una fibra o un subproceso bloqueado estaba esperándole. |
E_FAIL |
Se ha producido un error catastrófico desconocido. Si un método devuelve E_FAIL, CLR no se puede seguir utilizando en el proceso. Las llamadas subsiguientes a métodos de hospedaje devuelven HOST_E_CLRNOTAVAILABLE. |
Comentarios
GetMemoryLoad incluye la función GlobalMemoryStatus de Win32. El valor de pMemoryLoad es el equivalente del campo dwMemoryLoad en la estructura MEMORYSTATUS devuelta desde GlobalMemoryStatus.
El motor en tiempo de ejecución utiliza el valor devuelto como heurístico para el recolector de elementos no utilizados. Por ejemplo, si el host informa de que se está utilizando la mayor parte de la memoria, el recolector de elementos no utilizados podría optar por recoger los elementos de varias generaciones para aumentar la cantidad de memoria potencialmente disponible.
Requisitos
Plataformas: vea Requisitos de sistema de .NET Framework.
Encabezado: MSCorEE.h
Biblioteca: Se incluye como recurso en MsCorEE.dll
Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0