外面有像样的 C # 分析师吗?

我需要 C # 分析器。

虽然我不反对支付一个,一些是免费的,或至少有一个试用版将是理想的,因为它需要时间来提高购买订单。

有什么建议吗?

41128 次浏览

目前不使用它们,我的一个朋友对蚂蚁分析器赞不绝口。我知道这是一个付费产品,不知道有多贵。如果你碰巧雇佣了一个 MVP,你也许可以利用这一点免费获得许可证。

我用过 AQtime,它从来没有让我失望过。我相信有一个试用版。

一年半以前,我在一个大型 c # 项目中使用了 蚂蚁分析师。它的表现真的非常好,它的成本,甚至超过了一些更昂贵的竞争对手。

它用几乎一行一行的分辨率来计算成本。

来自 JetBrains 的 dotTrace 被广泛使用。

Patrick Smacchia 令人敬畏的 不依赖非常适合提供静态分析。

你可以尝试以下方法:


编辑: Nprof 已被 SlimTune取代,并使用.Net 4.0应用程序

我们在我工作的地方使用 蚂蚁分析师,它以简单的方式提供非常详细的信息。

Patrick Smacchia 的 NDepend 很棒 非常适合提供静电 分析。

我完全推荐使用 NDepend 进行静态分析,但是需要注意的是,你可能需要花一两天的时间来分析它提供的大量信息,并且弄清楚所有的统计数据对你的代码来说到底意味着什么。

我昨天找到了 .NET 内存分析器,我必须说我对它印象深刻。
我今天就去申请驾照。

有趣的是,没有人提到在 Visual Studio 的高端版本中有一个——我总是发现它对于执行分析来说已经足够好了。对于内存分析,我使用已经提到过的内存分析器,但是 不是我通常将其描述为“分析器”。

你想做什么样的侧写?

我支持 红门蚂蚁分析器。我用它来跟踪一些真正令人不安的性能问题,它非常容易使用(学习曲线低) ,并以一种容易理解的方式提供了漂亮、详细的数据。价格标签是值得的,但它不是免费的..。

我们使用 .NET 内存分析器。它有点难看,但对于查找悬空引用非常有用。

我最初尝试的 红门的蚂蚁分析器是非常性感的,但从内存泄漏的角度来看,它糟糕的原因如下:

1)它慢得可笑。将应用程序进入开始记录的状态需要半个小时(不使用红门需要20秒)。

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

然而,红门蚂蚁的时间组成部分是令人印象深刻的。只是不要使用内存分析器,除非您正在处理一个无关紧要(占用空间很小)的应用程序。

我在.NET 内存分析器上运气不错

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

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

EQATEC 侧写员非常好,而且是完全免费的。它易于设置和使用,并且似乎不会给应用程序增加太多的开销。我今天刚刚开始使用它,已经发现了一些瓶颈,否则我是不会发现的。

你的目标是什么?

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

为此,我以这种方法发誓。

EQATEC 侧写师在这里完成了任务。

我对 sharptoolbox.com 进行了全面的 .NET 的分析器列表检查。

您将在那里找到这里建议的工具以及更多的工具,每个工具都有一个简短的提议描述。

SharpDevelopment (3.1.1)的当前版本有一个很好的集成分析器。它非常快,并且很好地集成到 SharpDevelopmentIDE 及其 NUnit 运行程序中。结果以灵活的 Tree/List 样式显示(使用 LINQ 创建您自己的选择)。双喜欢显示的方法直接跳转到源代码中。