【发布时间】:2018-07-03 17:35:44
【问题描述】:
我正在尝试检测我们的应用程序以寻求性能优化,但我无法从中获取任何数据。我主要对函数运行时间以及它们被调用的次数感兴趣。
你能指出我的过程中的缺陷吗?
这是我的工作:
1. VSInstr MyAssembly.dll
这会创建仪器的 dll(如两倍大小)并备份原始文件。 我收到关于强名称事物的警告,所以第 2 步
2。 sn -Ra MyAssembly.dll TheKeyFile.snk
说辞职成功了
3. VsPerfCLREnv /traceon
设置环境变量
4.运行程序。我在要调查的步骤之前进行。
5. VsPerfCmd /start:trace /output:../Reports/Report.vsp
开始跟踪
6.单击按钮执行该过程(应用创建)并等待完成
7. VSPerfCmd /shutdown
停止追踪。
8. VSPerfCLREnv /off
恢复正常环境
最后,我检查了 Report.vsp 文件。这是一个 148KB 的文件,在 VS2017 中打开时会抛出这两个错误弹出窗口并且无法打开任何内容:
- 文件不包含数据缓冲区
- 分析报告失败
【问题讨论】:
标签: c# dll profiling instrumentation vsperfmon