ICLRMemoryNotificationCallback::OnMemoryNotification Method

Notifies the common language runtime (CLR) of the memory load on the computer.

Syntax

HRESULT OnMemoryNotification (  
    [in] EMemoryAvailable eMemoryAvailable  
);  

Parameters

eMemoryAvailable
[in] One of the EMemoryAvailable values, indicating the memory pressure the computer is currently experiencing.

Return Value

HRESULT Description
S_OK OnMemoryNotification returned successfully.
HOST_E_CLRNOTAVAILABLE The CLR has not been loaded into a process, or the CLR is in a state in which it cannot run managed code or process the call successfully.
HOST_E_TIMEOUT The call timed out.
HOST_E_NOT_OWNER The caller does not own the lock.
HOST_E_ABANDONED An event was canceled while a blocked thread or fiber was waiting on it.
E_FAIL An unknown catastrophic failure occurred. After a method returns E_FAIL, the CLR is no longer usable within the process. Subsequent calls to hosting methods return HOST_E_CLRNOTAVAILABLE.

Remarks

The CLR registers a callback to OnMemoryNotification by using a call to the IHostMemoryManager::RegisterMemoryNotificationCallback method. The runtime uses the information returned in the callback to free additional memory when the host reports that memory resources are running low.

Note

Calls to OnMemoryNotification never block. They always return immediately.

Requirements

Platforms: See System Requirements.

Header: MSCorEE.h

Library: Included as a resource in MSCorEE.dll

.NET Framework Versions: Available since 2.0

See also