Compartir a través de


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

Vea también

Referencia

System.GC

IHostMemoryManager (Interfaz)