有没有像样的C#分析器?

时间:2020-03-05 18:39:33  来源:igfitidea点击:

我需要一个Cprofiler。

尽管我不愿意花钱购买,但是免费或者至少带有试用版的东西是理想的选择,因为要花很多时间才能提高采购订单。

有什么建议吗?

解决方案

回答

目前不使用它们,这是有关Ants profiler的雷鬼伙伴。我知道它的付费产品不确定价格是否昂贵。如果我们碰巧雇用了一名MVP,我们也许可以利用它免费获得许可证。

回答

我用过AQtime,它从未让我失望过。我确定有一个试用版。

回答

一年半以前,我在大型cproject上使用过Ants profiler。就其成本而言,它确实表现非常出色,甚至胜过了一些更昂贵的竞争对手。

它几乎以逐行分辨率计算成本。

回答

JetBrains的dotTrace被广泛使用。

Patrick Smacchia出色的NDepend非常适合提供静态分析。

回答

我们可以尝试以下方法:

  • nprof(免费,但有点旧)
  • ProfileSharp(开源)
  • .Net Memory Profiler(对内存泄漏非常有用,有一个试用版)

编辑:
Nprof已被SlimTune取代,并可以与.Net 4.0应用程序一起使用

回答

我们在工作的地方使用Ants profiler。它以简单的方式提供了非常详细的信息。

回答

Patrick Smacchia's awesome NDepend is
  excellent for providing static
  analysis.

我会彻底推荐NDepend进行静态分析,但要提醒我们,我们可能需要花一两天的时间来实际分析它提供的大量信息,并弄清楚所有统计信息实际上意味着:代码。

回答

昨天我找到了.NET Memory Profiler,我必须对它印象深刻。
我今天要订购许可证。

回答

有趣的是,没有人提到Visual Studio的高端版本中有一个,我一直发现它足以执行执行性能分析。对于内存分析,我使用了已经提到的Memory Profiler,但它并不是我通常所说的" Profiler"。

我们尝试执行哪种分析?

回答

我将第二个Red Gate的ANTS探查器。我使用它来跟踪一些真正令人困扰的性能问题,并且使用起来非常简单(学习曲线很低),并且以易于理解的方式呈现了精美,详细的数据。价格标签是值得的,但它不是免费的...

回答

我们使用.NET Memory Profiler。它有点丑陋,但对于查找悬挂的参考非常有用。

我最初尝试使用Red Gate的ANTS分析器,该分析器非常性感,但是从内存泄漏的角度来看,它很烂,原因如下:

1)它的速度太慢了。使应用程序进入开始记录状态需要花费半小时的时间(花费20秒而没有出现红门)。

2)Red Gate需要在自己的工具上运行自己的工具。当我完成两个快照时,它已经使用了900MB的内存!然后它崩溃了:(

但是,Red Gate ANTS的计时组件给人留下了深刻的印象。只是不必理会内存分析器,除非我们要处理的是琐碎的(小占用空间)应用程序。

回答

.NET内存分析器祝我好运

回答

尽管对于分析内存使用情况不是很好,但是某些版本的Visual Studio中包含的分析器在分析执行速度方面做得很好。

回答

AQTime(性能和内存)或者ANTS(v4性能分析器或者v5 beta内存分析器)。

回答

EQATEC探查器非常好,并且是完全免费的。它易于设置和使用,并且似乎不会为应用程序增加太多开销。我今天才刚刚开始使用它,并且已经发现了我本来不会发现的几个瓶颈。

回答

你的目标是什么?

目标是查找特定的语句并大致了解它们对总执行时间的影响,以便我们找到不同的方法来执行它们吗?

为此,我发誓要采用这种方法。

回答

EQATEC探查器在这里完成了这项工作。

回答

我在SharpToolbox.com上维护.NET探查器的完整列表。

我们将在此处找到更多建议的工具,每个工具都简要说明了建议。

回答

当前版本的SharpDevelop(3.1.1)具有不错的集成分析器。它非常快,并且可以很好地集成到SharpDevelop IDE及其NUnit运行器中。结果以灵活的树/列表样式显示(使用LINQ创建自己的选择)。双击显示的方法将直接跳入源代码。