Freigeben über


Threadsyntax

Viele Debuggerbefehle verfügen über Threadbezeichner als Parameter. Vor dem Threadbezeichner wird eine Tilde ( ~ ) angezeigt.

Der Threadbezeichner kann einer der folgenden Werte sein.

Threadbezeichner BESCHREIBUNG

~.

Der aktuelle Thread.

~#

Der Thread, der das aktuelle Ausnahme- oder Debugereignis verursacht hat.

~*

Alle Threads im Prozess.

~Anzahl

Der Thread, dessen Index Number ist.

~~[TID]

Der Thread, dessen Thread-ID die TID ist. (Die Klammern sind erforderlich. Sie können kein Leerzeichen zwischen der zweiten Tilde und der öffnenden Klammer hinzufügen.)

~[Ausdruck]

Der Thread, dessen Thread-ID die ganze Zahl ist, in die der numerische Ausdruck aufgelöst wird.

Threads werden beim Erstellen Indizes zugewiesen. Beachten Sie, dass sich diese Zahl von der Thread-ID unterscheidet, die das Microsoft Windows-Betriebssystem verwendet.

Wenn das Debuggen beginnt, ist der aktuelle Thread derjenige, der das aktuelle Ausnahme- oder Debugereignis verursacht hat (oder der aktive Thread, wenn der Debugger an den Prozess angefügt wurde). Dieser Thread bleibt der aktuelle Thread, bis Sie einen neuen Thread mithilfe eines Befehls ~s (Set Current Thread) oder mithilfe des Fensters Prozesse und Threads in WinDbg angeben.

Threadbezeichner werden in der Regel als Befehlspräfixe angezeigt. Beachten Sie, dass nicht alle Feldhalterzeichen in allen Befehlen verfügbar sind, die Threadbezeichner verwenden.

Ein Beispiel für die Syntax ~[Ausdruck] wäre ~[@$t0]. In diesem Beispiel ändert sich der Thread abhängig vom Wert eines benutzerdefinierten Pseudoregisters. Mit dieser Syntax können Debuggerskripts einen Thread programmgesteuert auswählen.

Steuern von Threads im Kernelmodus

Im Kernelmodus können Sie Threads nicht mithilfe von Threadbezeichnern steuern. Weitere Informationen zum Zugreifen auf threadspezifische Informationen im Kernelmodus finden Sie unter Ändern von Kontexten.

Hinweis Sie können das Tildenzeichen ( ~ ) verwenden, um Threads während des Debuggens im Benutzermodus anzugeben. Beim Debuggen im Kernelmodus können Sie die Tilde verwenden, um Prozessoren anzugeben. Weitere Informationen zum Angeben von Prozessoren finden Sie unter Mehrprozessorsyntax.