次の方法で共有


MakeStaticAnalyzerGroup

C++ Build Insights SDK は、Visual Studio 2017 以降と互換性があります。 これらのバージョンのドキュメントを表示するには、この記事の Visual Studio バージョン セレクター コントロールを Visual Studio 2017 以降に設定します。 このページの目次の一番上にあります。

MakeStaticAnalyzerGroup関数は、AnalyzeRelogなどの関数に渡すことができる静的アナライザー グループを作成します。 アナライザー グループのメンバーは、トレース内のすべてのイベントが分析されるまで、左から右に 1 つずつイベントを受信します。

構文

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

パラメーター

TAnalyzerPtrs
このパラメーターは常に推測されます。

analyzers
静的アナライザー グループに含められる IAnalyzer ポインターのパラメーター パック。 これらのポインターには、生、std::unique_ptr、または std::shared_ptr を使用できます。

戻り値

静的アナライザー グループ。 戻り値を取得するには、auto キーワードを使用します。

解説

動的アナライザー グループとは異なり、静的アナライザー グループのメンバーは、コンパイル時に既知である必要があります。 また、静的アナライザー グループには、ポリモーフィックな動作を持たない IAnalyzer ポインターが含まれています。 静的アナライザー グループが Windows イベント トレーシング (ETW) トレースを分析する場合、 IAnalyzer インターフェイスの呼び出しは常に、アナライザー グループ メンバーが直接指すオブジェクトに解決されます。 この柔軟性が失われると、イベント処理が高速化される可能性があります。

コンパイル時にアナライザー グループのメンバーがわからない場合、または IAnalyzer ポインターに対してポリモーフィックな動作が必要な場合は、動的アナライザー グループの使用を検討します。 動的アナライザー グループを使用するには、代わりに MakeDynamicAnalyzerGroup を呼び出します。