跟踪.net应用程序



我在每个DLL下有500多个类的应用程序。通过这种方式,应用程序包含7到10个dll。

为了优化目的,我想知道特定过程的每个方法和子方法所花费的时间。

为了实现这一点,我在每个方法的开头和结尾添加了2行代码,这些代码将方法名称和执行时间添加到日志文件中。一旦我找到了长时间运行的方法并对其进行了优化,就删除这些行。

这个过程有自动化吗?通过启用任何布尔设置,框架将写入具有相同方法名称和执行时间的日志文件。:)

(或)是否有其他方法可以轻松实现上述目标?(

您应该使用分析器而不是重新发明轮子。此外,您的计时可能会出错,因为很难获得良好的时间测量。这可能导致您诊断出错误的代码段。你的方法也很耗时而且容易出错。

我曾经合作过的几个分析器:

  • ANTS Performance Profiler
  • Visual Studio Performance tools
  • Jetbrains dotTrace

如果你想看到一些"现实生活中的行动"在ANTS上的使用,请参阅这篇文章,我在其中包含了一些来自ANTS的图表。

最新更新