Como anexar o criador de perfil a um serviço nativo para coletar dados de simultaneidade usando a linha de comando
Esse tópico descreve com usar as Visual Studio Ferramentas de Criação de Perfil da linha de comando para anexar o criador de perfis a um serviço nativo (C/C++) e coletar dados de simultaneidade do thread usando o método de amostragem.
Observação |
---|
Os recursos avançados de segurança no Windows 8 e Windows Server 2012 necessitaram de alterações significativas na forma que o profiler do Visual Studio coleta dados dessas plataformas.Os aplicativos da Windows Store também requerem novas técnicas de coleção.Consulte Criando perfil de aplicativos do Windows 8 e do Windows Server 2012. |
Observação |
---|
As ferramentas de linha de comando de Ferramentas de Criação de Perfil estão localizadas no no subdiretório \ ferramentas de equipe \ ferramentas de desempenho do diretório de instalação do 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 o criador de perfis em um prompt de comando, você deve adicionar o caminho das ferramentas à variável de ambiente PATH da janela de 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. |
Quando o profiler é anexado ao serviço, você pode pausar e retomar a coleção de dados.Para encerrar uma sessão de criação de perfil, o criador de perfis não deve mais estar anexado ao serviço e deverá ser explicitamente desligado.
Anexando o criador de perfis
Para anexar o criador de perfis a um serviço nativo, use as opções VSPerfCmd/start e /attach para inicializar o criador de perfis e anexá-lo ao aplicativo de destino.Você pode especificar /start e /attach e suas respectivas opções em uma única linha de comando.Você também pode adicionar a opção /globaloff para pausar a coleta de dados no início do aplicativo de destino.Em seguida, use o /globalon para iniciar a coleta de dados.
Para anexar o criador de perfis a um serviço nativo
Se o serviço não estiver sendo executado, inicie-o.
Inicie o criador de perfis digitando o seguinte no prompt de comando:
VSPerfCmd/start:concurrency **/output:**OutputFile [Options]
- A opção /output**:**OutputFileé necessária com /startOutputFile especifica o nome e o local do arquivo (.vsp) de dados de análise.
Você pode usar qualquer opção na seguinte tabela com a opção /start .
Observação A maioria dos serviços requerem a opção de /user e de /crosssession.
Opção
Descrição
/user:[Domain\]UserName
Especifica o domínio e o nome da conta de usuário opcionais para ter acesso concedido ao profiler.
Permite analisar os processos em outras sessões de logon.
/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 valor padrão é 500.
/events:Config
Especifica um rastreamento de evento para evento do Windows (ETW) para ser coletado durante a análise.Os eventos de ETW são coletados em um arquivo separado (.etl).
Anexe o criador de perfis ao serviço digitando o seguinte comando em um prompt de comando.
**VSPerfCmd /attach:**PID
PID especifica o nome ou ID do processo do aplicativo de destino.Você pode exibir os IDs de processo de todos os processos em execução no Gerenciador de Tarefas do Windows.
Coleta de dados de controle
Durante a execução do aplicativo destino, é possível controlar a coleção de dados iniciando e interrompendo a gravação de dados para o arquivo com as opções de VSPerfCmd.exe.Controlando a coleção de dados, você pode coletar 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 pares de opções na tabela a seguir começam e param 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 para (/processoff) a coleção de dados para o processo que a identificação de processo (PID) especificar.
/attach inicia a coleção de dados para o processo que o ID do processo (PID) ou nome do processo (ProcName) identifica./detach para a coleta de dados para o processo especificado ou para todos os processos se nenhum processo é especificado.
Finalizando a sessão de análise
Para finalizar uma sessão, o profiler não deve estar coletando dados.É possível parar de coletar dados de um de um serviço nativo que está sendo analisado com o método de simultaneidade, interrompendo o serviço ou invocando a opção VSPerfCmd /detach.Então, você chama a opção VSPerfCmd /shutdown para desativar o criador de perfis e fechar o arquivo de dados de criação de perfil.
Para finalizar uma sessão de criação de perfil
Desanexe o criador de perfis do aplicativo de destino, interrompendo o serviço ou digitando o seguinte comando no prompt de comando:
Digite VSPerfCmd /detach
Desligue o profiler digitando o seguinte comando em um prompt de comando.
VSPerfCmd /shutdown