运行Performance Analysis时,为什么我的代码更快?

时间:2011-02-14 14:16:24

标签: c# visual-studio-2010

我在这里遇到了一些难题。我一直在尝试加速某个功能,现在当我运行我的应用程序时,运行此功能需要大约16-17秒。

现在,如果我在VS2010中与Performance Analysis一起运行相同的运行,为了找到较慢的部分,代码在~6-7秒内执行。现在,如果我的代码确实快速运行,那么对于应用程序来说这是完全可以接受的。

我尝试通过调试和发布配置文件运行代码(没有性能分析),几乎没有区别。

任何人都有任何想法可能会在这里发生什么?

很少有注意事项:所讨论的函数使用了相当多的LINQ to SQL,我使用的性能分析是CPU采样。

2 个答案:

答案 0 :(得分:4)

我相信你应该专注于你代码中最慢的部分并且如果你确定比其他部分需要更长的时间来优化它们,不要关心绝对持续时间(以秒为单位),而只是考虑相对。

即使您看到整个应用程序在7秒内执行,如果有一些方法占用整个时间的40%,尝试优化它们,那么即使没有启用性能分析和总执行,您也一定会从这个微调中获益如果最初是17秒左右,时间会下降得更多。

答案 1 :(得分:1)

在非性能分析案例中输入函数时,您是否看到很多dll被加载?我想知道进入这个函数是否会导致很多dll加载,在性能分析案例中已经加载了。