ICLRMemoryNotificationCallback::OnMemoryNotification Method
Notifies the common language runtime (CLR) of the memory load on the computer.
HRESULT OnMemoryNotification (
[in] EMemoryAvailable eMemoryAvailable
);
Parameters
- eMemoryAvailable
[in] One of the EMemoryAvailable Enumeration 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 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: Windows 2000, Windows XP, Windows Server 2003 family
Header: MSCorEE.idl
Library: Included as a resource in MSCorEE.dll
.NET Framework Version: 2.0
See Also
Reference
IHostMemoryManager Interface
IHostMemoryManager::RegisterMemoryNotificationCallback Method
ICLRMemoryNotificationCallback Interface