Analyze 函数

C++ Build Insights SDK 与 Visual Studio 2017 及更高版本兼容。 若要查看这些版本对应的文档,请将本文的 Visual Studio“版本”选择器控件设置为 Visual Studio 2017 或更高版本。 它位于此页面上目录表的顶部。

Analyze 函数用于分析在跟踪 C++ 生成时从 MSVC 中获取的 Windows 事件跟踪 (ETW) 跟踪。 ETW 跟踪中的事件按顺序转发到调用方提供的分析器组。 此函数支持多传递分析,允许在一行中多次将事件流转发到分析器组。

语法

template <typename... TAnalyzerGroupMembers>
RESULT_CODE Analyze(
    const char*                                   inputLogFile,
    unsigned                                      numberOfPasses,
    StaticAnalyzerGroup<TAnalyzerGroupMembers...> analyzerGroup);

template <typename... TAnalyzerGroupMembers>
RESULT_CODE Analyze(
    const wchar_t*                                inputLogFile,
    unsigned                                      numberOfPasses,
    StaticAnalyzerGroup<TAnalyzerGroupMembers...> analyzerGroup);

参数

TAnalyzerGroupMembers
此参数始终是推导出来的。

inputLogFile
要从中读取事件的输入 ETW 跟踪。

numberOfPasses
要在输入跟踪上运行的分析传递数。 每个分析传递通过提供的分析器组传递一次跟踪。

analyzerGroup
用于分析的分析器组。 调用 MakeStaticAnalyzerGroup 以创建分析器组。 若要使用从 MakeDynamicAnalyzerGroup 中获取的动态分析器组,请先通过将其地址传递给 MakeStaticAnalyzerGroup 来将该组封装在静态分析器组内。

返回值

RESULT_CODE 枚举中的结果代码。