代码之家  ›  专栏  ›  技术社区  ›  PaulStock

在Windows窗体应用程序中查找长时间运行的代码的最佳方法是什么

  •  6
  • PaulStock  · 技术社区  · 17 年前

    我继承了用vb.net编写的Windows窗体应用程序。应用程序的某些部分运行速度非常慢。找出代码中哪些部分阻碍了事情发展的最简单方法是什么?我正在寻找一种方法来快速找到最慢的子程序,并首先处理它们,以加快应用程序的速度。

    我知道有几个代码探查器产品可供购买,这些产品将显示每个子例程需要多长时间,但我希望找到 自由的 解决方案。

    4 回复  |  直到 9 年前
        1
  •  3
  •   Nathan    17 年前

    我很感激能找到免费软件。但是,在这种情况下,我强烈建议查看所有选项,包括商业产品。我试着玩nprof(我想是0.1版),但运气不好。即便如此,性能分析应用程序仍是一项微妙的业务,最好使用功能强大、灵活的工具进行处理。除非你是免费工作,我坚信使用专业产品所节省的时间将远远超过许可证的成本。当然,如果您只想分析一个应用程序,那么每个商业软件包都有一个15天或30天的试用期,这足以确定现有应用程序中的任何问题。如果您需要对不止一个一次性项目的分析支持,那么无论如何,您最好购买一个完整的强度工具。

    我们使用 ANTS profiler 从Redgate来的,一直都很高兴。我也用过 .NET Memory Profiler 效果非常好。.NET内存分析器最酷的一点是它可以附加到生产应用程序上并分析运行的应用程序,当我们在生产中发生内存泄漏时,这确实节省了我们的时间,我们无法在测试实验室中重现。

    JetBrains的人 have a profiler as well called dotTrace 我没有尝试过,但我必须相信,如果它来自JetBrains商店,它可能也是一流的。

    不管怎样,我的建议是:尝试在一个免费试用窗口或三个窗口(至少45天免费使用)的聚合组合中修复你的应用,如果时间不够,选择你最喜欢的,然后为其中一个选择Spring。你不会后悔的。

        2
  •  1
  •   Community CDub    8 年前

    nProf 是一个免费的.NET探查器( ref )

        3
  •  1
  •   Greg Hurlman    17 年前

    nProf 是一个很好的.NET分析的免费工具。

        4
  •  0
  •   winwaed    14 年前

    Visual Studio还附带了一个性能分析器,这非常好。它并不是随所有版本一起提供的-对于VS2008,我认为它是您需要的开发人员版本。