IHostMemoryManager
Mise à jour : novembre 2007
Fournit les méthodes qui permettent au Common Language Runtime (CLR) de formuler des demandes de mémoire virtuelle par le biais de l'hôte, au lieu d'utiliser les fonctions de mémoire virtuelle Win32 standard.
interface IHostMemoryManager : IUnknown {
HRESULT CreateMAlloc (
[in] BOOL fThreadSafe,
[out] IHostMalloc **ppMalloc
);
HRESULT VirtualAlloc (
[in] void* pAddress,
[in] SIZE_T dwSize,
[in] DWORD flAllocationType,
[in] DWORD flProtect,
[in] EMemoryCriticalLevel dwCriticalLevel,
[out] void** ppMem
);
HRESULT VirtualFree (
[in] LPVOID lpAddress,
[in] SIZE_T dwSize,
[in] DWORD dwFreeType
);
HRESULT VirtualQuery (
[in] void* lpAddress,
[out] void* lpBuffer,
[in] SIZE_T dwLength,
[out] SIZE_T *pResult
);
HRESULT VirtualProtect (
[in] void* lpAddress,
[in] SIZE_T dwSize,
[in] DWORD flNewProtect,
[out] DWORD* pflOldProtect
);
HRESULT GetMemoryLoad (
[out] DWORD* pMemoryLoad,
[out] SIZE_T *pAvailableBytes
);
HRESULT RegisterMemoryNotificationCallback (
[in] ICLRMemoryNotificationCallback* pCallback
);
HRESULT NeedsVirtualAddressSpace(
[in] LPVOID startAddress,
[in] SIZE_T size
);
HRESULT AcquiredVirtualAddressSpace(
[in] LPVOID startAddress,
[in] SIZE_T size
);
HRESULT ReleasedVirtualAddressSpace(
[in] LPVOID startAddress
);
};
Méthodes
Méthode |
Description |
---|---|
Notifie l'hôte que le Common Language Runtime (CLR) a acquis la mémoire spécifiée à partir du système d'exploitation. |
|
Obtient un pointeur d'interface vers une instance IHostMAlloc qui est utilisée pour demander des allocations de mémoire à partir d'un tas créé par l'hôte. |
|
Obtient la quantité de mémoire physique qui est utilisée actuellement, telle que signalée par l'hôte. |
|
Notifie l'hôte que le CLR va essayer d'utiliser la mémoire spécifiée. |
|
IHostMemoryManager::RegisterMemoryNotificationCallback, méthode |
Enregistre un pointeur vers une fonction de rappel que l'hôte appelle pour notifier le CLR du chargement en cours de la mémoire sur l'ordinateur. |
Notifie l'hôte que le CLR a terminé d'utiliser la mémoire spécifiée. |
|
Sert de wrapper logique pour la fonction Win32 correspondante, de manière à réserver ou valider une région de pages dans l'espace d'adressage virtuel du processus appelant. |
|
Sert de wrapper logique pour la fonction Win32 correspondante, de manière à libérer, invalider ou libérer et invalider une région de pages dans l'espace d'adressage virtuel du processus appelant. |
|
Sert de wrapper logique pour la fonction Win32 correspondante, de manière à modifier la protection d'une région de pages validées dans l'espace d'adressage virtuel du processus appelant. |
|
Sert de wrapper logique pour la fonction Win32 correspondante, de manière à récupérer des informations sur une plage de pages dans l'espace d'adressage virtuel du processus appelant. |
Notes
IHostMemoryManager fournit également des méthodes pour que le CLR obtienne un pointeur par l'intermédiaire duquel formuler des demandes de mémoire sur le tas et obtenir le niveau de sollicitation de la mémoire dans le processus, tel qu'indiqué par l'hôte.
Configuration requise
Platforms: See Configuration requise du .NET Framework.
En-tête : MSCorEE.idl
Bibliothèque : incluse en tant que ressource dans MSCorEE.dll
.NET Framework Versions: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0