你在使用。net程序时使用过哪些分析器,你特别推荐哪一个?
当前回答
蚂蚁分析器。我用过的不多,但我对ANTS并没有什么抱怨。可视化真的很有帮助。
其他回答
如果许可是一个问题,您可以尝试WINDBG进行内存分析
当前版本的SharpDevelop(3.1.1)有一个很好的集成分析器。它非常快,并且很好地集成到SharpDevelop IDE和它的NUnit运行器中。结果以灵活的树/列表样式显示(使用LINQ创建自己的选择)。双击显示的方法将直接跳转到源代码。
别忘了很棒的scitech .net内存分析器
它可以很好地跟踪。net应用程序内存不足的原因。
我还要补充一点,dotTrace区分内存和性能跟踪会话的能力绝对是无价的(ANTS可能也有内存差异特性,但我没有看到性能差异)。
能够在bug修复或增强之前和之后运行一个分析会话,然后比较结果是非常有价值的,特别是对于一个庞大的遗留的。net应用程序(就像我的情况),性能从来都不是优先考虑的,而且查找瓶颈可能非常乏味。执行前后差异可以查看每个方法的调用计数变化和每个方法的持续时间变化。
This is helpful not only during code changes, but also if you have an application that uses a different database, say, for each client/customer. If one customer complains of slowness, you can run a profiling session using their database and compare the results with a "fast" database to determine which operations are contributing to the slowness. Of course there are many database-side performance tools, but sometimes I really helps to see the performance metrics from the application side (since that's closer to what the user's actually seeing).
总结:dotTrace工作得很好,差异是无价的。
我自己还没试过,但也许dotTrace?他们的ReSharper应用程序当然是一个很好的应用程序。也许dotTrace也是:)
推荐文章
- 在c#中从URI字符串获取文件名
- 检查SqlDataReader对象中的列名
- 如何将类标记为已弃用?
- c# 8支持。net框架吗?
- Linq-to-Entities Join vs GroupJoin
- 为什么字符串类型的默认值是null而不是空字符串?
- 在list中获取不同值的列表
- 组合框:向项目添加文本和值(无绑定源)
- AutoMapper:“忽略剩下的?”
- 如何为ASP.net/C#应用程序配置文件值中的值添加&号
- 从System.Drawing.Bitmap中加载WPF BitmapImage
- 如何找出一个文件存在于c# / .NET?
- 为什么更快地检查字典是否包含键,而不是捕捉异常,以防它不?
- [DataContract]的命名空间
- string. isnullorempty (string) vs. string. isnullowhitespace (string)