Partilhar via


SDK do Visualizador de Simultaneidade

Descreve como instrumentalizar o código-fonte usando o SDK de Visualização Simultânea para exibir informações adicionais na Visualização Simultânea. É possível associar os dados adicionais a fases e eventos em seu código. Estas visualizações adicionais são conhecidas como marcadores. Para ver um passo a passo introdutório, consulte Apresentando o SDK da Visualização Simultânea.

Propriedades

Sinalizadores, intervalos e mensagens têm, cada um, duas propriedades: categoria e importância. Na caixa de diálogo Configurações Avançadas, é possível usar essas propriedades para filtrar o conjunto de marcadores exibidos. Além disso, essas propriedades afetam a representação visual de marcadores. Por exemplo, o tamanho dos sinalizadores é usado para representar a importância. Além disso, a cor é usada para indicar a categoria.

Uso básico

A Visualização Simultânea expõe um provedor padrão que pode ser usado para gerar marcadores. O provedor já está registrado junto com a Visualização Simultânea e não é necessário fazer mais nada para fazer os marcadores serem exibidos na interface do usuário.

C# e Visual Basic

No C#, no Visual Basic e em outros códigos gerenciados, use o provedor padrão chamando métodos na classe Markers. Ele expõe quatro métodos para gerar marcadores: WriteFlag, EnterSpan, WriteMessagee WriteAlert. Há várias sobrecargas para essas funções, dependendo se você deseja usar os padrões para as propriedades. A sobrecarga mais simples aceita apenas um parâmetro de cadeia de caracteres que especifica a descrição do evento. A descrição é exibida nos relatórios da Visualização Simultânea.

Para adicionar suporte do SDK a um projeto em C# ou do Visual Basic
  1. Na barra de menus, escolha Analisar, Visualização Simultânea, Adicionar SDK ao projeto.

  2. Selecione o projeto no qual você deseja acessar o SDK e, em seguida, escolha o botão Adicionar SDK ao Projeto Selecionado.

  3. Adicione uma importação ou instrução using ao seu código.

    using Microsoft.ConcurrencyVisualizer.Instrumentation;
    

C++

Em C++, crie um objeto classe marker_series e use-o para chamar funções. A classe marker_series expõe três funções para gerar marcadores, a marker_series::write_flag Method, a marker_series::write_message Method e a marker_series::write_alert Method.

Para adicionar suporte do SDK a um projeto em C# ou em C
  1. Na barra de menus, escolha Analisar, Visualização Simultânea, Adicionar SDK ao projeto.

  2. Selecione o projeto no qual você deseja acessar o SDK e, em seguida, escolha o botão Adicionar SDK ao Projeto Selecionado.

  3. Para C++, inclua cvmarkersobj.h. Para C, inclua cvmarkers.h.

  4. Adicione uma instrução using ao seu código.

    using namespace Concurrency::diagnostic;
    
  5. Crie um objeto marker_series e passe-o para o construtor span.

    
    marker_series mySeries;
    span s(mySeries, _T("Span description"));
    
    

Uso personalizado

Para cenários avançados, o SDK da Visualização Simultânea expõe mais controle. Dois conceitos principais estão associados a cenários mais avançados: séries de marcadores e provedores de marcador. Os provedores de marcador são diferentes provedores ETW (cada um tem um GUID diferente). As séries de marcadores são canais seriais de eventos gerados por um provedor. É possível usá-los para organizar os eventos gerados por um provedor de marcador.

Para usar um novo provedor de marcador em um projeto em C# ou do Visual Basic

  1. Crie um objeto MarkerWriter. O construtor aceita um GUID.

  2. Para registrar o provedor, abra a caixa de diálogo Configurações Avançadas da Visualização Simultânea. Selecione a guia Marcadores e, em seguida, escolha o botão Adicionar novo provedor. Na caixa de diálogo Configurações Avançadas, digite o GUID usado para criar o provedor e uma descrição do provedor.

Para usar um novo provedor de marcador em um projeto em C ou em C++

  1. Use a função CvInitProvider para inicializar um PCV_PROVIDER. O construtor aceita um GUID* e PCV_PROVIDER*.

  2. Para registrar o provedor, abra a caixa de diálogo Configurações Avançadas. Selecione a guia Marcadores e, em seguida, escolha o botão Adicionar novo provedor. Nessa caixa de diálogo, insira o GUID usado para criar o provedor e uma descrição do provedor.

Para usar uma série de marcadores em um projeto em C# ou do Visual Basic

  1. Para usar uma nova MarkerSeries, primeiro crie-a usando um objeto MarkerWriter e, em seguida, gere eventos de marcador diretamente da nova série.

    MarkerSeries series1 = myMarkerWriter.CreateMarkerSeries("Series 1");
    series1.WriteFlag("My flag");
    

Para usar uma série de marcadores em um projeto em C++

  1. Crie um objeto marker_series. É possível gerar eventos nessa nova série.

    marker_series series;
    series.write_flag(_T("Hello world!"));
    

Para usar uma série de marcadores em um projeto em C

  1. Use a função CvCreateMarkerSeries para criar um PCV_MARKERSERIES.

    PCV_MARKERSERIES series;
    CvCreatemarkerSeries(myProvider, _T("My Series"), &series);
    CvWriteFlag(series, _T("Writing a flag"));
    

Confira também

Título Descrição
Referência de biblioteca C++ Descreve a API da Visualização Simultânea para C++.
Referência de biblioteca C Descreve a API da Visualização Simultânea para C.
Instrumentação Descreve a API da Visualização Simultânea para o código gerenciado.
Visualizador de Simultaneidade Informações de referência para as exibições e relatórios de arquivos de dados de criação de perfil gerados usando o método de simultaneidade e que incluem dados de execução de threads.