MakeStaticAnalyzerGroup

O SDK do C++ Build Insights é compatível com o Visual Studio 2017 e posterior. Para ver a documentação dessas versões, defina o controle seletor de Versão do Visual Studio deste artigo para o Visual Studio 2017 ou posterior. Ele é encontrado na parte superior da tabela de conteúdo nesta página.

A função MakeStaticAnalyzerGroup cria um grupo de analisadores estáticos que você pode passar para funções como Analyze ou Relog. Os membros de um grupo de analisadores recebem eventos um a um, da esquerda para a direita, até que todos os eventos em um rastreamento sejam analisados.

Sintaxe

template <typename... TAnalyzerPtrs>
auto MakeStaticAnalyzerGroup(TAnalyzerPtrs... analyzers);

Parâmetros

TAnalyzerPtrs
Esse parâmetro é sempre deduzido.

analyzers
Um pacote de parâmetros de ponteiros IAnalyzer incluído no grupo de analisadores estáticos. Esses ponteiros podem ser brutos, std::unique_ptr ou std::shared_ptr.

Valor de Devolução

Um grupo de analisadores estáticos. Use a palavra-chave auto para capturar o valor retornado.

Comentários

Ao contrário dos grupos de analisadores dinâmicos, os membros de um grupo de analisadores estáticos precisam ser conhecidos em tempo de compilação. Além disso, um grupo de analisadores estáticos contém ponteiros IAnalyzer que não têm comportamento polimórfico. Quando um grupo de analisadores estáticos analisa um rastreamento Rastreamento de Eventos para Windows (ETW), as chamadas para a interface IAnalyzer sempre são resolvidas para o objeto diretamente apontado pelo membro do grupo de analisadores. Essa perda de flexibilidade possibilita o processamento mais rápido de eventos.

Se os membros de um grupo de analisadores não puderem ser conhecidos no momento da compilação ou se você precisar de comportamento polimórfico em seus ponteiros IAnalyzer, considere usar um grupo de snalisadores dinâmicos. Para usar um grupo de analisadores dinâmicos, chame MakeDynamicAnalyzerGroup.