Freigeben über


ICorDebugThread::EnumerateChains-Methode

Aktualisiert: November 2007

Ruft einen Schnittstellenzeiger auf einen ICorDebugChainEnum-Enumerator ab, der alle Stapelketten in diesem ICorDebugThread-Objekt enthält.

HRESULT EnumerateChains (
    [out] ICorDebugChainEnum **ppChains
);

Parameter

  • ppChains
    [out] Ein Zeiger auf die Adresse eines ICorDebugChainEnum-Objekts, das eine Enumeration aller Stapelketten in diesem Thread ermöglicht, beginnend bei der aktiven (also der aktuellen) Kette.

Hinweise

Die Stapelkette stellt die physische Aufrufliste für den Thread dar. Unter den folgenden Umstände wird eine Stapelkettenbegrenzung erstellt:

  • Ein Übergang von verwaltetem zu nicht verwaltetem Code oder ein Übergang von nicht verwaltetem zu verwaltetem Code

  • Ein Kontextschalter

  • Eine Debuggerfremdsteuerung eines Benutzerthreads

In einem Thread, in dem nur verwalteter Code in einem einzelnen Kontext ausgeführt wird, gibt es eine 1:1-Entsprechung zwischen Threads und Stapelketten.

Ein Debugger könnte versuchen, die physischen Aufruflisten aller Threads in logischen Aufruflisten neu anzuordnen. Dazu müssten die Ketten aller Threads nach ihren Aufrufer-/Aufgerufener-Beziehungen sortiert und umgruppiert werden.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: CorDebug.idl

Bibliothek: CorGuids.lib

.NET Framework-Versionen: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

Siehe auch

Referenz

ICorDebugThread

ICorDebugThread2