Condividi tramite


Funzione CreateMemoryResourceNotification (memoryapi.h)

Crea un oggetto notifica della risorsa di memoria.

Sintassi

HANDLE CreateMemoryResourceNotification(
  [in] MEMORY_RESOURCE_NOTIFICATION_TYPE NotificationType
);

Parametri

[in] NotificationType

Condizione di memoria in cui deve essere segnalato l'oggetto. Questo parametro può essere uno dei valori seguenti dell'enumerazione MEMORY_RESOURCE_NOTIFICATION_TYPE .

Valore Significato
LowMemoryResourceNotification
0
La memoria fisica disponibile è insufficiente.
HighMemoryResourceNotification
1
La memoria fisica disponibile è elevata.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un handle per un oggetto notifica della risorsa di memoria.

Se la funzione ha esito negativo, il valore restituito è NULL. Per ottenere informazioni estese, chiamare GetLastError.

Commenti

Le applicazioni possono usare eventi di notifica delle risorse di memoria per ridimensionare l'utilizzo della memoria in base alle esigenze. Se la memoria disponibile è insufficiente, l'applicazione può ridurre il working set. Se la memoria disponibile è elevata, l'applicazione può allocare più memoria.

Qualsiasi thread del processo chiamante può specificare l'handle di notifica delle risorse di memoria in una chiamata alla funzione QueryMemoryResourceNotification o a una delle funzioni di attesa. Lo stato dell'oggetto viene segnalato quando esiste la condizione di memoria specificata. Si tratta di un evento a livello di sistema, quindi tutte le applicazioni ricevono una notifica quando l'oggetto viene segnalato. Si noti che esiste un intervallo di disponibilità di memoria in cui non viene segnalato alcun oggetto LowMemoryResourceNotification o HighMemoryResourceNotification . In questo caso, le applicazioni devono tentare di mantenere costante l'utilizzo della memoria.

Usare la funzione CloseHandle per chiudere l'handle. Il sistema chiude automaticamente l'handle al termine del processo. L'oggetto notifica della risorsa di memoria viene eliminato definitivamente quando l'ultimo handle è stato chiuso.

Per compilare un'applicazione che usa questa funzione, definire la macro _WIN32_WINNT come 0x0501 o versione successiva. Per altre informazioni, vedere Uso delle intestazioni di Windows.

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione memoryapi.h (include Windows.h, Memoryapi.h)
Libreria onecore.lib
DLL Kernel32.dll

Vedere anche

Closehandle

Funzioni di gestione della memoria

QueryMemoryResourceNotification