ResetWriteWatch-Funktion (memoryapi.h)
Setzt den Schreibnachverfolgungsstatus für eine Region des virtuellen Arbeitsspeichers zurück. Nachfolgende Aufrufe der GetWriteWatch-Funktion melden nur Seiten, in die seit dem Zurücksetzungsvorgang geschrieben wurden.
64-Bit-Windows auf Itanium-basierten Systemen: Aufgrund der unterschiedlichen Seitengrößen wird ResetWriteWatch für 32-Bit-Anwendungen nicht unterstützt.
Syntax
UINT ResetWriteWatch(
[in] LPVOID lpBaseAddress,
[in] SIZE_T dwRegionSize
);
Parameter
[in] lpBaseAddress
Ein Zeiger auf die Basisadresse des Speicherbereichs, für den der Schreibnachverfolgungsstatus zurückgesetzt werden soll.
Diese Adresse muss sich in einem Speicherbereich befinden, der von der VirtualAlloc-Funktion mit MEM_WRITE_WATCH zugeordnet wird.
[in] dwRegionSize
Die Größe des Speicherbereichs, für den die Schreibnachverfolgungsinformationen in Bytes zurückgesetzt werden sollen.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert 0 (Null).
Wenn die Funktion fehlschlägt, ist der Rückgabewert ein Wert ungleich null.
Hinweise
Die ResetWriteWatch-Funktion kann für eine Anwendung wie einen Garbage Collector nützlich sein. Die Anwendung ruft die GetWriteWatch-Funktion auf, um die Liste der geschriebenen Seiten abzurufen, und schreibt dann im Rahmen des Bereinigungsvorgangs in diese Seiten. Anschließend ruft der Garbage Collector ResetWriteWatch auf, um die durch die Bereinigung verursachten Schreibnachverfolgungsdatensätze zu entfernen.
Sie können den Schreibnachverfolgungsstatus eines Speicherbereichs auch zurücksetzen, indem Sie beim Aufrufen von GetWriteWatchWRITE_WATCH_FLAG_RESET angeben.
Wenn Sie ResetWriteWatch verwenden, müssen Sie sicherstellen, dass während des Intervalls zwischen den Aufrufen GetWriteWatch und ResetWriteWatch keine Threads in die Region schreiben. Andernfalls gibt es möglicherweise geschriebene Seiten, die Sie nicht erkennen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | memoryapi.h (einschließlich Windows.h, Memoryapi.h) |
Bibliothek | onecore.lib |
DLL | Kernel32.dll |