以编程方式插入性能分析标记

Bre*_*ias 10 .net profiler profiling visual-studio

我正在使用Visual Studio 2008开发版的Profiler.要执行"有针对性的分析",我可以在附加到当前运行的测试代码的任何时候通过"标记"手动设置分析器过滤器.但我想以编程方式插入标记.我想在我的测试代码中添加一个调用,指令或指令,当执行时,它会告诉探查器"这是一个'标记',称为'BeginWork'"和"这是一个'标记',称为'EndWork'".

有没有办法做到这一点?如果没有,Visual Studio 2010是否具备该功能?

Col*_*sen 11

您可以使用Profiler API以编程方式插入标记.请参阅MSDN上的DataCollection.CommentMarkProfile方法文档.

您只需要从"Program Files [x86]\Microsoft Visual Studio 9.0\Team Tools\Performance Tools"添加对Microsoft.VisualStudio.Profiler.dll的引用即可使用托管API.

您的测试代码可能如下所示:

MarkOperationResult result;
result = DataCollection.CommentMarkProfile(markID1, "BeginWork");
// Validate result...

SomeOperation();

result = DataCollection.CommentMarkProfile(markID2, "EndWork");
// Validate result...
Run Code Online (Sandbox Code Playgroud)