Como anexar o criador de perfil a um aplicativo autônomo do .NET Framework para coletar dados de memória usando a linha de comando
Esse tópico descreve com usar as Visual Studio Premium Ferramentas de Criação de Perfil da linha de comando para anexar o criador de perfis a um aplicativo independente (cliente) em execução do .NET Framework e coletar dados da memória.
Observação |
---|
Ferramentas de linha de comando das Ferramentas de Criação de Perfil estão localizadas no subdiretório \Team Tools\Performance Tools do diretório de instalação Visual Studio.Nos computadores de 64 bits, ambas as versões de 64 bits e de 32 bits das ferramentas está disponível.Para usar as ferramentas de linha de comando do criador de perfis, você deve adicionar o caminho das ferramentas para a variável de ambiente PATH da janela Prompt de Comando ou adicioná-lo ao próprio comando.Para obter mais informações, consulte Especificando o caminho para ferramentas de linha de comando de ferramentas de criação de perfil. |
Para anexar a um aplicativo .NET Framework e coletar dados de memória, você deve usar a ferramenta VSPerfCLREnv.cmd para inicializar as variáveis de ambiente apropriadas antes que o aplicativo de destino seja iniciado.Quando o criador de perfis é anexado ao aplicativo, é possível usar a ferramenta VSPerfCmd.exe para pausar e retomar a coleção de dados.
Para finalizar uma sessão de criação de perfil, o criador de perfis deve ser desanexado de todos os processos com perfil e o criador de perfis deverá ser explicitamente encerrado.Na maioria dos casos, recomendamos limpar as variáveis de ambiente ao final de uma sessão.
Anexando o criador de perfis
Para anexar o criador de perfis a um aplicativo do .NET Framework que está em execução
Abra uma janela de prompt de comando.
Inicialize as variáveis do ambiente do perfil.Tipo:
VSPerfClrEnv {/samplegc | /samplegclife} [/samplelineoff]
As opções /samplegc e /samplegclife especificam se é necessário coletar somente dados de alocação de memória ou coletar dados de alocação de memória e dados tempo de vida do objeto.Uma e somente uma opção deve ser especificada.
Opção
Descrições
/samplegc
Colete apenas os dados de alocação de memória.
/samplegclife
Colete dados de tempo de vida do objeto e da alocação de memória.
A opção /samplelineoff desabilita a coleção de dados de número de linha do código-fonte.
Inicie o criador de perfis.Tipo:
**VSPerfCmd /start:sample /output:**OutputFile [Options]
A opção /start:sample inicializa o criador de perfis.
A opção /output**:**OutputFileé necessária com /startOutputFile especifica o nome e o local dos dados de perfil (.vsp).
Você pode usar qualquer uma das seguintes opções com a opção /start:sample.
Opção
Descrição
/user:[Domain\]UserName
Especifica o domínio e o nome do usuário da conta que possui o processo com perfil.Essa opção é necessária somente se o processo estiver sendo executado como um usuário diferente do usuário conectado.O proprietário do processo é listado na coluna de nome de usuário na guia de processos do gerenciador de tarefas do Windows.
Permite analisar os processos em outras sessões.Essa opção será necessária se o aplicativo estiver sendo executado em uma sessão diferente.O identificador de sessão é listado na coluna ID da sessão na guia Processos do Windows Task Manager./CS pode ser especificado como uma abreviação para /crosssession.
/wincounter:WinCounterPath
Especifica o contador de desempenho do Windows que será coletado durante a análise.
/automark:Interval
Uso com /wincounter somente.Especifica o número de milissegundos entre eventos de coleção contador de desempenho do Windows.O padrão é 500 ms.
Se necessário, inicie o aplicativo de destino normalmente.
Anexa o criador de perfis ao aplicativo de destino.Tipo:
VSPerfCmd /attach:{PID|ProcName} [/targetclr**:**Version]
PID especifica o ID do processo do aplicativo de destino.ProcessName especifica o nome do processo.Observe que se você especificar ProcessName e vários processos com o mesmo nome estiverem em execução, os resultados serão imprevisíveis.Você pode exibir os IDs de processo de todos os processos em execução no Gerenciador de Tarefas do Windows.
**/targetclr:**Version especifica a versão do common language runtime (CLR) para analisar quando mais de uma versão do runtime é carregada em um aplicativo.Opcional.
Coleta de dados de controle
Durante a execução do aplicativo de destino, é possível controlar a coleção de dados iniciando e interrompendo a gravação de dados no arquivo usando as opções de VSPerfCmd.exe.A coleta de dados de controle permite que você colete dados para uma parte específica de execução do programa, como o inicio ou término do aplicativo.
Para iniciar e parar a coleção de dados
Os seguintes pares de opções iniciam e interrompem a coleção de dados.Especifique cada opção em uma linha separada de comando.É possível desativar e ativar a coleção de dados várias vezes.
Opção
Descrição
Inicia (/globalon) ou para (/globaloff) a coleção de dados para todos os processos.
/processon:PID/processoff:PID
Inicia (/processon) ou interrompe a coleção de dados (/processoff) para o processo especificado pelo PID.
/attach inicia a coleção de dados para o processo especificado pelo PID ou pelo nome do processo (ProcName)./detach para a coleta de dados para o processo especificado ou para todos os processos se nenhum processo for especificado.
Finalizando a sessão de análise
Para finalizar uma sessão de criação de perfil, o criador de perfis deve ser desanexado de todos os processos com perfil e o criador de perfis deverá ser explicitamente encerrado.Você pode desanexar o criador de perfil de um aplicativo que teve o perfil criado com o método de amostragem fechando o aplicativo ou chamando a opção VSPerfCmd /detach.Depois, chame a opção VSPerfCmd /shutdown para desativar o criador de perfis e feche o arquivo de dados de criação de perfil.O comando VSPerfClrEnv /off apaga as variáveis de ambiente de criação de perfis.
Para finalizar uma sessão de criação de perfil
Execute uma destas etapas para desanexar o criador de perfis do aplicativo de destino:
Digite VSPerfCmd /detach
- ou -
Feche o aplicativo de destino.
Encerrar o criador de perfis.Tipo:
VSPerfCmd /shutdown
(Opcional) Limpe as variáveis do ambiente do perfil.Tipo:
VSPerfCmd /off
Consulte também
Conceitos
Criação de perfil de linha de comando dos aplicativos autônomos
Outros recursos
Exibições de dados da memória do .NET das ferramentas de criação de perfil