Freigeben über


TTD-Threadobjekte

Beschreibung

TTD Thread-Objekte werden verwendet, um Informationen zu Threads und deren Lebensdauer während einer Zeitablaufverfolgung zu liefern.

Eigenschaften

Eigenschaften Beschreibung
UniqueId Eine eindeutige ID für den Thread über die Ablaufverfolgung hinweg.
Kennung Die TID des Threads.

Children

Object Beschreibung
Lebensdauer Ein TTD-Bereichsobjekt , das die Lebensdauer des Threads beschreibt.
ActiveTime Ein TTD-Bereichsobjekt , das die Zeit beschreibt, zu der der Thread aktiv war.

Verwendungsbeispiel

Verwenden Sie diesen DX-Befehl, um alle Threads im Array anzuzeigen.

0:0:000> dx -g @$curprocess.TTD.Threads
=================================================================================================================
=                             = (+) UniqueId = (+) Id    = (+) Lifetime                 = (+) ActiveTime        =
=================================================================================================================
= [0x0] : UID: 2, TID: 0x2428 - 0x2          - 0x2428    - [0:0, 6F0C4:0]               - [50C63:0, 6F0C4:0]    =
= [0x1] : UID: 3, TID: 0x3520 - 0x3          - 0x3520    - [0:0, FFFFFFFFFFFFFFFE:0]    - [5115A:0, 56B07:0]    =
= [0x2] : UID: 4, TID: 0x18E8 - 0x4          - 0x18e8    - [0:0, FFFFFFFFFFFFFFFE:0]    - [52F65:0, 56B1E:0]    =
= [0x3] : UID: 5, TID: 0x5690 - 0x5          - 0x5690    - [0:0, FFFFFFFFFFFFFFFE:0]    - [5300D:0, 5D4FA:0]    =
= [0x4] : UID: 6, TID: 0x46FC - 0x6          - 0x46fc    - [0:0, FFFFFFFFFFFFFFFE:0]    - [53782:0, 5433B:0]    =
= [0x5] : UID: 7, TID: 0x58D0 - 0x7          - 0x58d0    - [0:0, FFFFFFFFFFFFFFFE:0]    - [542FE:0, 543B9:0]    =
= [0x6] : UID: 8, TID: 0x950  - 0x8          - 0x950     - [0:0, FFFFFFFFFFFFFFFE:0]    - [543C4:0, 544B8:0]    =
= [0x7] : UID: 9, TID: 0x4514 - 0x9          - 0x4514    - [0:0, 6D61B:0]               - [5DBBD:0, 6D61B:0]    =
=================================================================================================================

Verwenden Sie diesen Dx-Befehl, um Informationen zum ersten Thread im Array anzuzeigen.

0:0:000 dx -r2 @$curprocess.TTD.Threads[0]
@$curprocess.TTD.Threads[0]                 : UID: 2, TID: 0x2428
    UniqueId         : 0x2
    Id               : 0x2428
    Lifetime         : [0:0, 6F0C4:0]
        MinPosition      : Min Position [Time Travel]
        MaxPosition      : 6F0C4:0 [Time Travel]
    ActiveTime       : [50C63:0, 6F0C4:0]
        MinPosition      : 50C63:0 [Time Travel]
        MaxPosition      : 6F0C4:0 [Time Travel]

Die [Time Travel]-Links bieten einen Link zu SeekTo() der spezifischen Nachverfolgung in der Ablaufverfolgung, als der Thread aktiv war.

0:0:000> dx @$curprocess.TTD.Threads[0].@"ActiveTime".@"MinPosition".SeekTo()
Setting position: 50C63:0
@$curprocess.TTD.Threads[0].@"ActiveTime".@"MinPosition".SeekTo()
(40b4.2428): Break instruction exception - code 80000003 (first/second chance not available)
Time Travel Position: 50C63:0
ntdll!NtTestAlert+0x14:
00007ffb`e3e289d4 c3              ret

Weitere Informationen

Debuggen von Zeitreisen – Einführung in Objekte zum Debuggen von Zeitreisen

Zeitreise-Debugging – Überblick

dx (Display Debugger Object Model Expression)