2013-02-19 53 views
0

我遇到了一个奇怪的情况,不知道该怎么查找。分析模式下的Visual Studio 2012提供更好的性能

我们在一个web项目中托管了一个Silverlight项目。此Silverlight项目使用Web项目托管的REST服务进行通信。

现在,当我们在调试模式下运行时,一切都按预期运行良好。所以我想到了它,并检查我可能会失去表现的所有地方。所以这里是有趣的部分。

我运行了VS2012 Profiler,它正在收集与执行方法,时间等有关的所有信息。但是这次我的项目闪电般快。在正常调试约1秒后执行的查询现在需要少于200毫秒。有一个非常密集的查询,需要大约20秒才能在正常模式下执行,但在分析过程中,它需要不到600毫秒。

所以我所做的就是我的代码和项目能够快速运行,但由于某些原因,在正常调试场景下速度并不那么快。

有人可以像发生在引擎盖下发生的事情那样发光,我如何在正常情况下实现这种性能。

我还想提一下,我也尝试过释放模式并发布到IIS,但没有一个在性能分析模式下提供了良好的性能。

从技术上讲,我之前想到的是在性能分析模式下,性能应该低于正常水平,因为在那个时候VS2012也在收集其他数据。

我很困惑。请帮忙。

感谢

回答

1

我知道你可能不会在这一点上需要帮助,但对于其他人谁在这个岗位绊倒,我给我的两分钱。

我和我正在开发的XNA项目有同样的问题。调试和发布模式在某些情况下都看到了大量的减速。它把我拉到低于1 FPS。我试图分析问题来解决问题,但在分析过程中从未发生过这个问题。

我终于发现减速是由Console.WriteLine()导致的。评论它解决了Debug和Release版本的问题。显然,Console.WriteLine的速度慢得可怜。

相关问题