.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. 基础篇:java基本数据类型

    1:java几种基本数据类型大小 关键字 类型 位数 (8位一字节) 取值范围(表示范围) byte 整型 8 -2^7 ~ 2^7-1 short 整型 16 -2^15 ~ 2^15-1 int ...

  2. C++读写ini配置文件GetPrivateProfileString()&WritePrivateProfileString()

    转载: 1.https://blog.csdn.net/fengbingchun/article/details/6075716 2. 转自:http://hi.baidu.com/andywangc ...

  3. 文档生成工具——Doxygen

    参考: 1.https://blog.csdn.net/liao20081228/article/details/77322584 2.https://blog.csdn.net/wang150619 ...

  4. Excel-VLOOKUP函数跨表匹配查找①

    问题场景 对表中的员工进行测评总结,从所有员工考核明细表中匹配这些参与测评的员工的得分和相关信息: 场景一 从所有员工明细表中匹配需要参与测评的员工相关信息. 建了两个sheet页,考核员工表和全员考 ...

  5. 深入理解golang:Context

    一.背景 在golang中,最主要的一个概念就是并发协程 goroutine,它只需用一个关键字 go 就可以开起一个协程,并运行. 一个单独的 goroutine运行,倒也没什么问题.如果是一个go ...

  6. SpringBoot logback 配置文件自定义属性

    添加自定义属性类 package com.cus.config; import ch.qos.logback.core.PropertyDefinerBase; import org.springfr ...

  7. Prometheus第一篇:Prometheus架构解析

    Prometheus是新一代的监控系统解决方案,原生支持云环境,和kubernetes无缝对接,的却是容器化监控解决方案的不二之选.当然对传统的监控方案也能够兼容,通过自定义或是用开源社区提供的各种e ...

  8. ansible-playbook简介

    1. ansible-playbook简介 • Playbooks 与 adhoc 相比,是一种完全不同的运用 ansible 的方式,是非常之强大的. • 简单来说,playbooks 是一种简单的 ...

  9. 数据结构与算法:AVL树

    AVL树 在计算机科学中,AVL树是最先发明的自平衡二叉查找树.在AVL树中任何节点的两个子树的高度最大差别为1,所以它也被称为高度平衡树.增加和删除可能需要通过一次或多次树旋转来重新平衡这个树.AV ...

  10. CentOS 7基础命令介绍

    01 CentOS基础命令介绍 重所周知,Linux是一个主要通过命令行来进行管理的操作系统,即通过键盘输入指令来管理系统的相关操作,包括但不限于编辑文件.启动/停止服务等.这和初学者曾经使用的Win ...