!for_each_thread
Die Erweiterung !for_each_thread führt den angegebenen Debugger-Befehl einmal für jeden Thread im Ziel aus.
!for_each_thread ["CommandString"]
!for_each_thread -?
CommandString
Gibt die Debugger-Befehle an, die für jeden Thread ausgeführt werden sollen. Wenn CommandString mehrere Befehle enthält, trennen Sie diese mit Semikolon (;) und schließen Sie CommandString in Anführungszeichen (") ein. Wenn CommandString in Anführungszeichen eingeschlossen ist, dürfen die einzelnen Befehle innerhalb von CommandString keine Anführungszeichen enthalten. Innerhalb von CommandString, wird @#Thread durch die Thread-Adresse ersetzt.
-?
Zeigt die Hilfe für diese Erweiterung im Debugger-Befehlsfenster an.
Diese Erweiterung funktioniert nur im Kernelmodus, auch wenn sie in Ext.dll enthalten ist.
Ext.dll
Weitere allgemeine Informationen über Threads finden Sie unter Threads und Prozesse. Weitere Informationen zur Manipulation oder zum Abrufen von Informationen über Threads finden Sie unter Steuerung von Prozessen und Threads.
Wenn keine Argumente angegeben werden, zeigt der Debugger eine Liste aller Threads an, zusammen mit den Thread-Wartezuständen. Dies entspricht der Eingabe von !thread @#Thread 2 als CommandString-Wert.
Sie können die Ausführung jederzeit durch Drücken von CTRL+BREAK (in WinDbg) oder CTRL+C (in KD) beenden.