Funzione ResetWriteWatch (memoryapi.h)
Reimposta lo stato di rilevamento della scrittura per un'area di memoria virtuale. Le chiamate successive alla funzione GetWriteWatch solo le pagine del report scritte in dopo l'operazione di reimpostazione.
Windows a 64 bit nei sistemi basati su Itanium: A causa della differenza nelle dimensioni della pagina, ResetWriteWatch non è supportato per le applicazioni a 32 bit.
Sintassi
UINT ResetWriteWatch(
[in] LPVOID lpBaseAddress,
[in] SIZE_T dwRegionSize
);
Parametri
[in] lpBaseAddress
Puntatore all'indirizzo di base dell'area di memoria per cui reimpostare lo stato di rilevamento della scrittura.
Questo indirizzo deve trovarsi in un'area di memoria allocata dalla funzione VirtualAlloc con MEM_WRITE_WATCH.
[in] dwRegionSize
Dimensioni dell'area di memoria per cui reimpostare le informazioni di rilevamento della scrittura, in byte.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è 0 (zero).
Se la funzione ha esito negativo, il valore restituito è un valore diverso da zero.
Commenti
La funzione ResetWriteWatch può essere utile per un'applicazione, ad esempio un Garbage Collector. L'applicazione chiama la funzione GetWriteWatch per recuperare l'elenco di pagine scritte e quindi scrive in tali pagine come parte dell'operazione di pulizia. Il Garbage Collector chiama quindi ResetWriteWatch per rimuovere i record di rilevamento delle scritture causati dalla pulizia.
È anche possibile reimpostare lo stato di rilevamento delle scritture di un'area di memoria specificando WRITE_WATCH_FLAG_RESET quando si chiama GetWriteWatch.
Se si usa ResetWriteWatch, è necessario assicurarsi che nessun thread venga scritto nell'area durante l'intervallo tra le chiamate GetWriteWatch e ResetWriteWatch . In caso contrario, potrebbero essere presenti pagine scritte che non vengono rilevate.
Requisiti
Client minimo supportato | Windows XP [app desktop | App UWP] |
Server minimo supportato | Windows Server 2003 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | memoryapi.h (include Windows.h, Memoryapi.h) |
Libreria | onecore.lib |
DLL | Kernel32.dll |