Compartilhar via


Recursos da API de criação de perfil

A API de criação de perfil fornece informações sobre uma variedade de eventos e ações que ocorrem no common linguagem tempo de execução (CLR). Você pode usar essas informações para monitor o funcionamento interno de processos e analisar o desempenho do seu aplicativo .NET estrutura.

Recursos com suporte

A API de criação de perfil recupera informações sobre as seguintes ações e eventos que ocorrem no CLR:

  • Eventos de inicialização e desligado do CLR.

  • Criação e o desligado eventos domínio do aplicativo.

  • Assembly carregar e descarregar eventos.

  • Módulo carregar e descarregar eventos.

  • Criação e destruição de eventos COM vtable.

  • Just-in-time (JIT) de compilação e apresentando o código de eventos.

  • Eventos de carregamento e descarregamento de classe.

  • thread eventos de criação e destruição.

  • Eventos de entrada e sair da função.

  • Exceções.

  • As transições entre gerenciados e código não gerenciado execução.

  • Transições entre tempo de execução diferentes contextos.

  • Informações sobre suspensões de tempo de execução.

  • Informações sobre a atividade de coleta de tempo de execução memória heap e lixo.

A API de criação de perfil pode ser chamada em qualquer linguagem compatível COM (não-gerenciado).

A API é eficiente em relação ao consumo de CPU e memória. Criação de perfil não envolve alterações para o aplicativo perfilado significativas o suficiente para causar resultados enganosos.

A API de criação de perfil é útil sampling tanto amostragem não geradores de perfis. A Gerador de analisar de amostragem inspeciona o analisar de tiques do relógio regular, digamos, em 5 milissegundos distantes. A criador de perfil de amostragem não é informado de que um evento sincronicamente com o segmento que faz com que o evento.

Funcionalidade sem-suporte

A API de criação de perfil não suporte a seguinte funcionalidade:

  • Código não gerenciado. O CLR API de criação de perfil funciona somente para código gerenciado. Você deve usar mecanismos do Win32 convencionais para criar o analisar de código não gerenciado. No entanto, o CLR criador de perfil inclui eventos de transição para determinar os limites entre código gerenciado e.

  • Automodificável aplicativos. A API de criação de perfil não oferece suporte a aplicativos que modificam o seu próprio código para fins sistema autônomo a programação orientada a aspecto.

  • Verificação de limites. A API de criação de perfil não fornece as informações que é necessário para verificar limites. O CLR fornece suporte intrínseco para verificação de todo o código gerenciado de limites.

  • Definindo o perfil remoto. As interfaces do criador de perfil de código CLR não suportam remoto profiling pelos seguintes motivos:

    • Definindo o perfil remoto estende o time de execução. Quando você usa as interfaces do criador de perfil, você deve minimizar o time de execução para que os resultados de criação de perfil não serão unduly afetada. Isso é especialmente verdadeiro quando a execução de desempenho está sendo monitorada. No entanto, definindo o perfil remoto não é uma limitação quando as interfaces do criador de perfil são usadas para monitorar o Uso de Memória ou para obter informações sobre quadros de pilha, objetos e assim por diante time de execução.

    • O criador de perfil de código CLR deve registrar uma ou mais interfaces de retorno de chamada com o tempo de execução no computador local no qual o aplicativo perfilado está sendo executado. Isso limita a capacidade de criar um criador de perfil remota de código.

  • Criação de perfil em ambientes de produção com requisitos de alta disponibilidade. A API de criação de perfil foi criada para oferecer suporte a diagnóstico de time de desenvolvimento. Ele não passou por testes rigorosos necessários para oferecer suporte a ambientes de produção.

Consulte também

Outros recursos

Criação de perfil do .NET estrutura

Visão geral de criação de perfil