虽然.NET框架号称永远不会发生内存泄漏,原因是引入了内存回收机制。但在实际应用中,往往我们分配了对象但没有释放指向该对象的引用,导致对象永远无法释放。最常见的情况就是给对象添加了事件处理函数,但当不再使用该对象时却没有将该函数从对象的事件handler中减掉。另外如果分配了非托管内存,而没有手工释放,GC同样无能为力。所以当.NET应用发生内存泄漏后如何跟踪应用的内存使用情况,定位到程序设计中的缺陷显得非常重要。下面想大家推荐5款非常实用的性能分析、内存优化工具。觉得让你收获满满!

1.JetBrains dotTrace

JetBrains dotTrace是一款性能和内存分析工具,它可以帮助你优化应用程序性能指标,支持.NET 1.0版本到4.5,快速分析程序瓶颈,找出影响效率的代码。官方网站上面有10天试用版,大家可以点击下载使用。

2.ANTS Performance Profiler

ANTS性能分析器是一种用于分析.NET框架支持的用任何语言编写的应用程序的工具。ANTS性能分析器能分析所有.NET应用程序,包括ASP.NET网络应用程序、Windows服务和COM+应用程序。ANTS性能分析器能在几分钟内识别性能瓶颈,运行非常快速,且响应时,对程序的执行具有最低影响。ANTS性能分析器可用作一种独立工具,也可用作Red Gate .NET Developer Bundle的一部分。目前支持14天免费试用,大家可以去体验体验。

3.EQATEC Profiler

另一个非常好的.NET分析器,它拥有多个版本,有免费版,标准版、专业版等。不仅使用方便,而且优化速度也相当快。

4.Telerik Just Trace

Telerik Just Trace是一款帮你轻松找出内存泄漏的分析工具,并且可以轻松搞定许多性能问题。

5..NET Memory Profiler

是一款非常深入分析.NRT内存的优化工具,快速发现内存泄漏问题,并且自动进行内存检测。

这些都是作者在平时使用和收集的,如果你有更好的分析工具,欢迎与大家分享。

5..NET 自带的.net profiler:微软官网可以下载到,但是感觉不太好用

转自:https://www.cnblogs.com/mrxiaohe/p/5911747.html

最新文章

  1. 常见排序算法(附java代码)
  2. Docker内部存储结构(devicemapper)解析(续)
  3. Smartforms常见问题
  4. C语言-05-内存分析
  5. CFString​Transform
  6. ZOJ1586 QS Network
  7. Android实例-使用电话拨号器在移动设备上(官方)(XE8+小米2)
  8. IBinder类的中文翻译
  9. 【Xamarin开发IOS-IOS生命周期】
  10. 监控工具zabbix
  11. webpack1.x 升级到 webpack2.x 英文文档翻译
  12. Activiti-06-.事件
  13. Druid连接池
  14. javascrip实现:若选中TreeView的父节点checkbox,则其子节点全部选中;子节点全部没选中,则父节点也会没选中。
  15. 深入web的请求过程
  16. Solving the Top ERP and CRM Metadata Challenges with erwin & Silwood
  17. 71.纯 CSS 创作一个跳 8 字型舞的 loader
  18. 带你了解源码中的 ThreadLocal
  19. [JSOI2008]Blue Mary的战役地图(二分+哈希)
  20. Vue-cli添加全局js

热门文章

  1. No 'Access-Control-Allow-Origin' header: 跨域问题踩坑记录
  2. 解决texlive化学式转换镜像经常偶发性进程堆积导致卡顿问题
  3. 难道你还不知道Spring之事务的回滚和提交的原理吗,这篇文章带你走进源码级别的解读。
  4. HDU 6987 - Cycle Binary(找性质+杜教筛)
  5. Mysql 预处理 PREPARE以及预处理的好处
  6. Go语言缺陷
  7. 深入理解动态规划DP
  8. 每日自动健康打卡(Python+腾讯云服务器)
  9. 数据集成工具—FlinkX
  10. Spark集群环境搭建——服务器环境初始化