Interface ICorProfilerInfo

Fornece métodos para uso por criadores de perfis de código a fim de se comunicar com o Common Language Runtime (CLR) para controlar o monitoramento de eventos e solicitar informações.

Observação

Cada método da interface ICorProfilerInfo retorna um HRESULT para indicar êxito ou falha. Confira CorError.h para obter uma lista de possíveis códigos de retorno.

Métodos

Método Descrição
Método BeginInprocDebugging Inicializa o suporte à depuração em processo. O método está obsoleto no .NET Framework versão 2.0.
Método EndInprocDebugging Desliga uma sessão de depuração em processo. O método está obsoleto no .NET Framework versão 2.0.
Método ForceGC Força a coleta de lixo a ocorrer dentro do runtime.
Método GetAppDomainInfo Obtém informações sobre o domínio do aplicativo especificado.
Método GetAssemblyInfo Obtém informações sobre o assembly especificado.
Método GetClassFromObject Obtém o ClassID de um

objeto, dado o ObjectID dele.
Método GetClassFromToken Obtém a ID da classe, dado o token de metadados. O método está obsoleto no .NET Framework versão 2.0. Use o método ICorProfilerInfo2::GetClassFromTokenAndTypeArgs.
Método GetClassIDInfo Obtém o módulo pai e o token de metadados para a classe especificada.
Método GetCodeInfo Obtém as extensões do código nativo associado à ID da função especificada. Esse método é obsoleto. Use o método ICorProfilerInfo2::GetCodeInfo2.
Método GetCurrentThreadID Obtém a ID do thread atual, se for um thread gerenciado.
Método GetEventMask Obtém as categorias de eventos atuais para os quais o criador de perfis deseja receber notificações de evento do CLR.
Método GetFunctionFromIP Mapeia um ponteiro de instrução de código gerenciado para um FunctionID.
Método GetFunctionFromToken Obtém a ID de uma função. O método está obsoleto no .NET Framework versão 2.0. Em vez disso, use o método ICorProfilerInfo2::GetFunctionFromTokenAndTypeArgs.
Método GetFunctionInfo Obtém a classe pai e o token de metadados para a função especificada.
Método GetHandleFromThread Mapeia a ID de um thread para um identificador de thread do Win32.
Método GetILFunctionBody Obtém um ponteiro para o corpo de um método no código CIL (linguagem intermediária comum), começando em seu cabeçalho.
Método GetILFunctionBodyAllocator Obtém uma interface que fornece um método para alocar memória a ser usada para trocar o corpo de um método no código CIL.
Método GetILToNativeMapping Obtém um mapa de deslocamentos CIL para deslocamentos nativos para o código contido na função especificada.
Método GetInprocInspectionInterface Obtém um objeto que pode ser consultado para a interface ICorDebugProcess. O método está obsoleto no .NET Framework versão 2.0.
Método GetInprocInspectionIThisThread Obtém um objeto que pode ser consultado para a interface ICorDebugThread. O método está obsoleto no .NET Framework versão 2.0.
Método GetModuleInfo Considerando uma ID do módulo, retorna o nome do arquivo do módulo e a ID do assembly pai do módulo.
Método GetModuleMetaData Obtém uma instância de interface de metadados que mapeia para o módulo especificado.
Método GetObjectSize Obtém o tamanho de um objeto especificado.
Método GetThreadContext Obtém a identidade de contexto atualmente associada ao thread especificado.
Método GetThreadInfo Obtém a identidade de thread do Win32 atual para o thread especificado.
Método GetTokenAndMetadataFromFunction Obtém o token de metadados e uma instância da interface de metadados que pode ser usada no token para a função especificada.
Método IsArrayClass Determina se a classe especificada é uma classe de matriz.
Método SetEnterLeaveFunctionHooks Especifica as funções implementadas pelo criador de perfil a serem chamadas em ganchos "enter", "leave" e "tailcall" de funções gerenciadas.
Método SetEventMask Define um valor que especifica os tipos de eventos para os quais o criador de perfil deseja receber notificações do CLR.
Método SetFunctionIDMapper Especifica a função implementada pelo criador de perfil que será chamada para mapear valores FunctionID para valores alternativos, que são passados para os ganchos de entrada/saída da função do criador de perfil.
Método SetFunctionReJIT Não implementado. Não use.
Método SetILFunctionBody Substitui o corpo da função especificada no módulo especificado.
Método SetILInstrumentedCodeMap Especifica como os deslocamentos da CIL original de uma função especificada são mapeados para os novos deslocamentos da CIL modificada pelo criador de perfil da função.

Comentários

Um criador de perfil chama um método na interface ICorProfilerInfo para se comunicar com o CLR para controlar o monitoramento de eventos e solicitar informações.

Os métodos da interface ICorProfilerInfo são implementados pelo CLR usando o modelo de thread livre. Cada método retorna um HRESULT para indicar êxito ou falha. Confira CorError.h para obter uma lista de possíveis códigos de retorno.

O CLR passa, por meio da implementação do criador de perfil de ICorProfilerCallback::Initialize, uma ICorProfilerInfo interface para cada criador de perfil de código durante a inicialização. Em seguida, um criador de perfil de código pode chamar métodos da interface ICorProfilerInfo para receber informações sobre o código gerenciado executado sob o controle do CLR.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: CorProf.idl, CorProf.h

Biblioteca: CorGuids.lib

Versões do .NET Framework: disponíveis desde 2.0

Confira também