Enumerazione COR_PRF_SUSPEND_REASON
Indica il motivo per cui il runtime è sospeso.
Sintassi
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_FOR_REJIT = 8
} COR_PRF_SUSPEND_REASON;
Members
Membro | Descrizione |
---|---|
COR_PRF_SUSPEND_OTHER |
Il runtime viene sospeso per un motivo non specificato. |
COR_PRF_SUSPEND_FOR_GC |
Il runtime viene sospeso per il servizio di una richiesta di Garbage Collection. I callback correlati a Garbage Collection si verificano tra i callback ICorProfilerCallback::RuntimeSuspendFinished e ICorProfilerCallback::RuntimeResumeStarted callback. |
COR_PRF_SUSPEND_FOR_APPDOMAIN_SHUTDOWN |
Il runtime viene sospeso in modo che un oggetto AppDomain possa essere arrestato.Mentre il runtime viene sospeso, il runtime determina quali thread si trovano nell'oggetto AppDomain in cui vengono arrestati e li impostano per interrompere la ripresa. Non AppDomain sono presenti callback specifici durante questa sospensione. |
COR_PRF_SUSPEND_FOR_CODE_PITCHING |
Il runtime viene sospeso in modo che possa verificarsi il pitching del codice. L'inserimento del codice si verifica solo quando il compilatore JIT (Just-In-Time) è attivo con il pitching del codice abilitato. I callback di inserimento del codice si verificano tra i ICorProfilerCallback::RuntimeSuspendFinished callback e ICorProfilerCallback::RuntimeResumeStarted i callback. Nota: CLR JIT non esegue le funzioni di inclinazione in .NET Framework versione 2.0, quindi questo valore non viene usato in 2.0. |
COR_PRF_SUSPEND_FOR_SHUTDOWN |
Il runtime viene sospeso in modo che possa essere arrestato. Deve sospendere tutti i thread per completare l'operazione. |
COR_PRF_SUSPEND_FOR_INPROC_DEBUGGER |
Il runtime viene sospeso per il debug in-process. |
COR_PRF_SUSPEND_FOR_GC_PREP |
Il runtime viene sospeso per preparare una Garbage Collection. |
COR_PRF_SUSPEND_FOR_REJIT |
Il runtime viene sospeso per la ricompilazione JIT. |
Commenti
Tutti i thread di runtime che si trovano nel codice non gestito possono continuare a eseguire fino a quando non tentano di immettere nuovamente il runtime, a quel punto verranno sospesi anche fino a quando il runtime non riprende. Questo vale anche per i nuovi thread che entrano nel runtime. Tutti i thread all'interno del runtime vengono sospesi immediatamente se si trovano nel codice interrotto o viene chiesto di sospendere quando raggiungono il codice interrotto.
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: CorProf.idl, CorProf.h
Libreria: CorGuids.lib
Versioni di .NET Framework: Disponibile da 1.0