Fonction CreateMemoryResourceNotification (memoryapi.h)
Crée un objet de notification de ressource de mémoire.
Syntaxe
HANDLE CreateMemoryResourceNotification(
[in] MEMORY_RESOURCE_NOTIFICATION_TYPE NotificationType
);
Paramètres
[in] NotificationType
Condition de mémoire sous laquelle l’objet doit être signalé. Ce paramètre peut être l’une des valeurs suivantes de l’énumération MEMORY_RESOURCE_NOTIFICATION_TYPE .
Valeur | Signification |
---|---|
|
La mémoire physique disponible est faible. |
|
La mémoire physique disponible est élevée. |
Valeur retournée
Si la fonction réussit, la valeur de retour est un handle vers un objet de notification de ressource mémoire.
Si la fonction échoue, la valeur de retour est NULL. Pour obtenir des informations étendues, appelez GetLastError.
Notes
Les applications peuvent utiliser des événements de notification des ressources de mémoire pour mettre à l’échelle l’utilisation de la mémoire en fonction des besoins. Si la mémoire disponible est faible, l’application peut réduire son jeu de travail. Si la mémoire disponible est élevée, l’application peut allouer plus de mémoire.
N’importe quel thread du processus d’appel peut spécifier le handle de notification des ressources mémoire dans un appel à la fonction QueryMemoryResourceNotification ou à l’une des fonctions d’attente. L’état de l’objet est signalé lorsque la condition de mémoire spécifiée existe. Il s’agit d’un événement à l’échelle du système, de sorte que toutes les applications reçoivent une notification lorsque l’objet est signalé. Notez qu’il existe une plage de disponibilité de la mémoire où ni l’objet LowMemoryResourceNotification ni HighMemoryResourceNotification n’est signalé. Dans ce cas, les applications doivent tenter de maintenir l’utilisation de la mémoire constante.
Utilisez la fonction CloseHandle pour fermer le handle. Le système ferme automatiquement le handle à l’arrêt du processus. L’objet de notification de ressource de mémoire est détruit lorsque son dernier handle a été fermé.
Pour compiler une application qui utilise cette fonction, définissez la macro _WIN32_WINNT comme 0x0501 ou version ultérieure. Pour plus d’informations, consultez Utilisation des en-têtes Windows.
Spécifications
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | memoryapi.h (inclure Windows.h, Memoryapi.h) |
Bibliothèque | onecore.lib |
DLL | Kernel32.dll |