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