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.