Compartilhar via


Interface ICorProfilerInfo2

Fornece métodos que os criadores de perfis de código usam para se comunicar com o Common Language Runtime (CLR) para controlar o monitoramento de eventos e solicitar informações. A interface ICorProfilerInfo2 é uma extensão da interface ICorProfilerInfo. Ou seja, ela fornece novos métodos com compatibilidade no .NET Framework versão 2.0 e versões posteriores.

Métodos

Método Descrição
Método DoStackSnapshot Orienta a pilha do thread especificado para relatar quadros de chamada gerenciados para o criador de perfil.
Método EnumModuleFrozenObjects Obtém um enumerador que permite iteração sobre os objetos congelados no módulo especificado.
Método GetAppDomainStaticAddress Obtém o endereço do campo estático do domínio do aplicativo especificado no escopo do domínio do aplicativo especificado.
Método GetArrayObjectInfo Obtém informações detalhadas sobre um objeto de matriz.
Método GetBoxClassLayout Obtém informações sobre o layout de classe para um tipo de valor especificado que está em caixa.
Método GetClassFromTokenAndTypeArgs Obtém o ClassID de um tipo usando o token de metadados especificado e os valores ClassID de argumentos de tipo.
Método GetClassIDInfo2 Obtém o módulo pai da classe genérica especificada, o token de metadados da classe, o ClassID da classe pai e o ClassID para cada argumento de tipo, se presente, da classe.
Método GetClassLayout Obtém informações sobre o layout, na memória, dos campos definidos pela classe especificada. Ou seja, esse método obtém os deslocamentos dos campos da classe.
Método GetCodeInfo2 Obtém as extensões do código nativo associado ao FunctionID especificado.
Método GetContextStaticAddress Obtém o endereço do campo estático de contexto especificado que está no escopo do contexto especificado.
Método GetFunctionFromTokenAndTypeArgs Obtém o FunctionID de uma função usando o token de metadados especificado, contendo classe e valores ClassID de quaisquer argumentos de tipo.
Método GetFunctionInfo2 Obtém a classe pai, o token de metadados e o ClassID de cada argumento de tipo, se presente, de uma função.
Método GetGenerationBounds Obtém as regiões de memória (os segmentos do heap) que compõem as gerações do heap coletado pelo lixo.
Método GetNotifiedExceptionClauseInfo Obtém as informações de endereço nativo e quadro para a cláusula de exceção (catch/finally/filter) que está prestes a ser executada ou acabou de ser executada.
Método GetObjectGeneration Obtém o segmento do heap que contém o objeto especificado.
Método GetRVAStaticAddress Obtém o endereço do campo estático RVA (endereço virtual relativo) especificado.
Método GetStaticFieldInfo Obtém o escopo no qual o campo especificado é estático.
Método GetStringLayout Obtém informações sobre o layout de um objeto de cadeia de caracteres.
Método GetThreadAppDomain Obtém o ID do domínio do aplicativo no qual o thread especificado está executando o código no momento.
Método GetThreadStaticAddress Obtém o endereço do campo estático de thread especificado que está no escopo do thread especificado.
Método SetEnterLeaveFunctionHooks2 Especifica as funções implementadas pelo criador de perfil a serem chamadas em ganchos "enter", "leave" e "tailcall" de funções gerenciadas.

Comentários

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

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

O CLR passa uma interface ICorProfilerInfo2 para cada criador de perfil de código durante a inicialização, usando a implementação do criador de perfil de ICorProfilerCallback::Initialize. Em seguida, um criador de perfil de código pode chamar métodos da interface ICorProfilerInfo2 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