.NET内存分析工具-dotMemory

1、介绍

官网链接

引言

程序内存占用较大?内存溢出?需要分析生产环境程序怎么办?

dotMemory 使您可以分析各种 .NET 和 .NET Core应用程序的内存使用情况:桌面应用程序、Windows 服务、ASP .NET Web 应用程序、IIS、IIS Express、任意 .NET 进程等。

2、安装

安装链接

3、使用

安装完成后运行本次的主角:dotMemory

第一次运行会出现相应条款和账户登录,先不管它(有几天试用),直接点击Resume evaluation同意,下一步点击OK

然后就进入dotMemory工具

这边重点介绍“Local”和“Import Dump”两种方式。“Local”:适合边运行边分析,我理解为在线分析;“Import Dump”适合于服务器不适合装软件(例如Linux环境),或者在生产环境上不适合安装软件,当您需要分析极大内存的时候,服务器内存不够时,我也建议您使用此方式,因为分析软件也需要占用系统资源,我理解为离线分析

3.1、Local 使用示例这里输入代码

第一步:启动程序

第二步:看到内存比较高了,就点击‘Get Snapshot’获取快照(可多次点击获取),点击后页面下方会出现每次点击的快照

第三步:进入分析界面



上图就是具体的分析界面了,大家自己多点点就明白了,其中“Gall Tree”就是要在启动的时候把‘Collect memory allocation and traffic data from start ’勾选上才可以查看的,这个功能建议开启,可以很方便的查看是哪行代码占用内存。

3.2、Import 使用示例

“Import”方式主要是要生成转储文件Dump(理解为把内存里面存的东西放到一个文件里),然后分析工具读取这个文件进行分析

3.2.1 Windows创建内存转储
第一步

打开‘任务管理器’,右击所要分析的程序,点击'创建转储文件',复制文件路径。

另外通过命令行也可以方便的生成快照文件,Linux系统也是这样,微软官方链接

第二步

然后就进入分析界面了,跟‘Local’方式进入的分析界面一样。

3.2.2 Linux创建内存转储

懒得写了,大佬请看官方文档 微软官方链接

鸣谢

玩双截棍的熊猫

初久的私房菜

.NET内存分析工具-dotMemory的更多相关文章

  1. Dotmemory 内存分析工具

    Dotmemory 内存分析工具 教程一.开始学习dotmemory 在本教程中,我们将学习如何运行dotMemory内存快照.此外,我们将简要地看看dotMemory的用户界面和基本分析的概念.考虑 ...

  2. [原创]推荐一款强大的.NET程序内存分析工具.NET Memory Profiler

    [原创]推荐一款强大的.NET程序内存分析工具.NET Memory Profiler 1 官方网站:http://memprofiler.com/2 下载地址:http://memprofiler. ...

  3. JS内存泄漏 和Chrome 内存分析工具简介(摘)

    原文地址:http://web.jobbole.com/88463/ JavaScript 中 4 种常见的内存泄露陷阱   原文:Sebastián Peyrott 译文:伯乐在线专栏作者 - AR ...

  4. Android 内存分析工具 MAT(Memory Analyzer Tool)

    如果使用DDMS确实发现了我们的程序中存在内存泄漏,那又如何定位到具体出现问题的代码片段,最终找到问题所在呢?如果从头到尾的分析代码逻辑,那肯定 会把人逼疯,特别是在维护别人写的代码的时候.这里介绍一 ...

  5. Android内存分析工具DDMS heap + MAT 安装和使用

    一  Java内存分析工具扫盲 如果像我一样一点都不了解,可以先进行内存分析工具扫盲   MAT介绍:     Eclipse Memory Analyzer(MAT)一个功能丰富的 JAVA 堆转储 ...

  6. Lua内存分析工具

    最近给公司写了一个lua内存分析工具,可以非常方便的分析出Lua内存泄露问题,有图形化界面操作,方便手机端上传快照等功能 内存分析我是在c语言端写的,也有人写过lua端的分析工具,也蛮好用的,不过lu ...

  7. Android内存优化(三)详解内存分析工具MAT

    前言 在这个系列的前四篇文章中,我分别介绍了DVM.ART.内存泄漏和内存检测工具的相关知识点,这一篇我们通过一个小例子,来学习如何使用内存分析工具MAT. 1.概述 在进行内存分析时,我们可以使用M ...

  8. Eclipse MAT内存分析工具(Memory Analyzer Tool)

    MAT内存分析工具 MAT是Memory Analyzer的简称,它是一款功能强大的Java堆内存分析器.可以用于查找内存泄露以及查看内存消耗情况.MAT是基于Eclipse开发的,是一款免费的性能分 ...

  9. [转] python运行时内存分析工具meliae

    转自:https://my.oschina.net/markco/blog/601773 利用meliae来监控python进程的内存占用情况 meliae是一个python进程内存占用监控.分析工具 ...

随机推荐

  1. spring @value和@@PropertySource注解简单使用

    @Value注解:可以使用注入基本字符串 EL表达式,从配置文件读取数据@PropertySource用于引入单个配置文件 @PropertySources用于引入多个配置文件 @PropertySo ...

  2. python_多级菜单_纯循环与分支

    源代码: #!/usr/bin/python3 __author__ = 'beimenchuixue' __blog__ = 'http://www.cnblogs.com/2bjiujiu/' d ...

  3. 朴素贝叶斯分类器Naive Bayes

    优点Naive Bayes classifiers tend to perform especially well in one of the following situations: When t ...

  4. GAN在seq2seq中的应用 Application to Sequence Generation

    Improving Supervised Seq-to-seq Model 有监督的 seq2seq ,比如机器翻译.聊天机器人.语音辨识之类的 . 而 generator 其实就是典型的 seq2s ...

  5. Serial.begin

    串口波特率的设置:通常我们使用Serial.begin(speed)来完成串口的初始化,这种方式,只能配置串口的波特率. 使用Serial.begin(speed, config)可以配置数据位.校验 ...

  6. CentOS之—双网卡双IP双网关配置

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/77487639 一.配置讲解 1.配置DNS 修改对应网卡的DNS的配置文件 # v ...

  7. Nginx作为反向代理时传递客户端IP的设置方法

    因为nginx的优越性,现在越来越多的用户在生产环境中使用nginx作为前端,不管nginx在前端是做负载均衡还是只做简单的反向代理,都需要把日志转发到后端real server,以方便我们检查程序的 ...

  8. PyCharm 上安装 Package(以 pandas 为例)

    一.使用 PyCharm 软件安装 pandas 包 1.打开 PyCharm 2.点击右上角 "Files" →"Settings..." 3.弹出" ...

  9. ansible-playbook文件复用

    1. ansible-playbook文件复用  1.1) include 和 import区别  include(动态):在运行时导入 --list-tags,--list-tasks不会显示到输出 ...

  10. C#数据结构-静态链表

    对于双向链表中的节点,都包括一个向前.向后的属性器用于指向前后两个节点,对于引用类型,对象存储的是指向内存片段的内存指针,那么我们可以将其简化看作向前向后的两个指针. 现在我们将引用类型替换为值类型i ...