VS性能分析工具 - 演练:分析应用程序
在学VS的性能分析工具。
在走MSDN里这个例子的时候困难重重:
http://msdn.microsoft.com/zh-cn/library/ms182398.aspx
很多与他说明不对应的地方。
出入1. 采样方法, 不会检测到GetName方法, 只有这些:

我已经将 采样时钟间隔设置足够小 1,000,000。 我的时钟主频是2.9G, 1/2.9×10^3秒采一次样。
但换“检测方式”就可以检测到GetPeople了, 它 是GetName的调用者。

出入2,看不了getPeopel代码细节
问题在于我要看getPeopel细节,才能找到GetName, 但是糟糕的是,getPeopel 已经是检测的最底层了,从“调用关系树” 和 “函数详细信息”可以证明这一点。

而无法继续深入检测的原因,就应该和无法正确显示 GetPeopel层的代码,是一个原因,也就是图片上的这句话:“源代码不可用.................”
我试图根据这句话,解决这个问题,也就是给他合适的符号路径:

我把解决方案中4个项目的所有bdg的路径都给加上了。
结果: 失败, 这不是正确的原因. 求高手赐教。
于是,我不计较这些, 决定继续走, 来尝试看一看 “演练” 后面性能的比较。
出入3: 首先你要把4个项目的 条件编译都加上。而非仅1个, 实际只有2个项目用。

悲剧在于, 加完, 运行程序后,点"Get Peopel"按钮, 报错:


debug发现了错误的位置。 但是不明白是什么错, 因为我不是c#程序员,,,搞了一会,没出结果。
待续....
2010.9.29 15:00 做个小结尾
演练最后部分改进=+ 的性能提升是正确的,如下图:

经过多次反复运行。 都有同样的结果。 String.Concat有-2.3左右的增量。 编程基本没有时间消耗的0.00独占样本。
对于2.源代码无法正确显示,3.报错问题。有时间解决或不解决。
浙公网安备 33010602011771号