COR_PRF_SUSPEND_REASON
Aktualisiert: November 2007
Gibt den Grund für die Unterbrechung der Laufzeit an.
typedef enum {
COR_PRF_SUSPEND_OTHER = 0x00,
COR_PRF_SUSPEND_FOR_GC = 0x01,
COR_PRF_SUSPEND_FOR_APPDOMAIN_SHUTDOWN = 0x02,
COR_PRF_SUSPEND_FOR_CODE_PITCHING = 0x03,
COR_PRF_SUSPEND_FOR_SHUTDOWN = 0x04,
COR_PRF_SUSPEND_FOR_INPROC_DEBUGGER = 0x06,
COR_PRF_SUSPEND_FOR_GC_PREP = 0x07
} COR_PRF_SUSPEND_REASON;
Member
Member |
Beschreibung |
---|---|
COR_PRF_FIELD_SUSPEND_OTHER |
Die Laufzeit wird aus einem nicht angegebenen Grund unterbrochen. |
COR_PRF_FIELD_SUSPEND_FOR_GC |
Die Laufzeit wird zur Verarbeitung einer Garbage Collection-Anforderung unterbrochen. Die Rückrufe in Bezug auf die Garbage Collection treten zwischen dem ICorProfilerCallback::RuntimeSuspendFinished-Rückruf und dem ICorProfilerCallback::RuntimeResumeStarted-Rückruf auf. |
COR_PRF_FIELD_SUSPEND_FOR_APPDOMAIN_SHUTDOWN |
Die Laufzeit wird unterbrochen, damit eine AppDomain beendet werden kann. Bei einer Laufzeitunterbrechung bestimmt die Laufzeit, welche Threads sich in der AppDomain befinden, die beendet wird, und legt fest, dass sie bei ihrer Fortsetzung abgebrochen werden. Während dieser Unterbrechung finden keine AppDomain-spezifischen Rückrufe statt. |
COR_PRF_FIELD_SUSPEND_FOR_CODE_PITCHING |
Die Laufzeit wird unterbrochen, damit Codepitching stattfinden kann. Codepitching erfolgt nur, wenn der JIT-Compiler (Just-In-Time) aktiv und Codepitching aktiviert ist. Codepitchingrückrufe treten zwischen dem ICorProfilerCallback::RuntimeSuspendFinished-Rückruf und dem ICorProfilerCallback::RuntimeResumeStarted auf.
Hinweis:
Der CLR-JIT-Compiler führt in .NET Framework, Version 2.0, kein Funktionspitching aus. Daher wird dieser Wert in Version 2.0 nicht verwendet.
|
COR_PRF_FIELD_SUSPEND_FOR_SHUTDOWN |
Die Laufzeit wird unterbrochen, damit sie beendet werden kann. Sie muss alle Threads unterbrechen, um die Operation abzuschließen. |
COR_PRF_FIELD_SUSPEND_FOR_INPROC_DEBUGGER |
Die Laufzeit wird für prozessinternes Debuggen unterbrochen. |
COR_PRF_FIELD_SUSPEND_FOR_GC_PREP |
Die Laufzeit wird für die Vorbereitung auf eine Garbage Collection unterbrochen. |
Hinweise
Alle Laufzeitthreads in nicht verwaltetem Code können weiter ausgeführt werden, bis sie versuchen, wieder in die Laufzeit einzutreten. An diesem Punkt werden sie auch angehalten, bis die Laufzeit fortgesetzt wird. Dies gilt auch für neue Threads, die in die Laufzeit eintreten. Alle Threads in der Laufzeit werden entweder sofort angehalten, wenn sie sich in unterbrechbarem Code befinden, oder sie erhalten die Aufforderung zum Anhalten, wenn sie unterbrechbaren Code erreichen.
Anforderungen
Plattformen: siehe Systemanforderungen für .NET Framework.
Header: CorProf.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