Partilhar via


Enumeração de COR_PRF_SUSPEND_REASON

Indica o motivo pelo qual o runtime está suspenso.

Syntax

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;  

Membros

Membro Description
COR_PRF_SUSPEND_OTHER O runtime é suspenso por um motivo não especificado.
COR_PRF_SUSPEND_FOR_GC O runtime está suspenso para atender um pedido de libertação de lixo.

As chamadas de retorno relacionadas com a recolha de lixo ocorrem entre as chamadas de retorno ICorProfilerCallback::RuntimeSuspendFinished e ICorProfilerCallback::RuntimeResumeStarted .
COR_PRF_SUSPEND_FOR_APPDOMAIN_SHUTDOWN O runtime é suspenso para que um AppDomain possa ser encerrado.

Enquanto o runtime está suspenso, o runtime determinará quais os AppDomain threads que estão no que está a ser encerrado e os definirá para abortar quando retomarem. Não existem AppDomainchamadas de retorno específicas durante esta suspensão.
COR_PRF_SUSPEND_FOR_CODE_PITCHING O runtime é suspenso para que possa ocorrer a apresentação de código.

A apresentação de código só ocorre quando o compilador just-in-time (JIT) está ativo com o pitching de código ativado. As chamadas de retorno de apresentação de código ocorrem entre as ICorProfilerCallback::RuntimeSuspendFinished chamadas de retorno e ICorProfilerCallback::RuntimeResumeStarted . Nota: O CLR JIT não apresenta funções no .NET Framework versão 2.0, pelo que este valor não é utilizado em 2.0.
COR_PRF_SUSPEND_FOR_SHUTDOWN O runtime é suspenso para que possa ser encerrado. Tem de suspender todos os threads para concluir a operação.
COR_PRF_SUSPEND_FOR_INPROC_DEBUGGER O runtime está suspenso para depuração no processo.
COR_PRF_SUSPEND_FOR_GC_PREP O runtime está suspenso para se preparar para uma libertação de lixo.
COR_PRF_SUSPEND_FOR_REJIT O runtime está suspenso para recompilação do JIT.

Observações

Todos os threads de tempo de execução que estejam em código não gerido podem continuar em execução até tentarem voltar a introduzir o runtime, altura em que também serão suspensos até que o runtime seja retomado. Isto também se aplica a novos threads que introduzem o runtime. Todos os threads dentro do runtime são suspensos imediatamente se estiverem em código interruptível ou solicitados a suspender quando atingirem o código interruptível.

Requisitos

Plataformas: Veja Requisitos do Sistema.

Cabeçalho: CorProf.idl, CorProf.h

Biblioteca: CorGuids.lib

.NET Framework Versões: Disponível desde 1.0

Ver também