首页 > 系统相关 >C#内存泄漏分析方法

C#内存泄漏分析方法

时间:2023-06-29 19:56:13浏览次数:48  
标签:泄漏 文件 C# 转储 内存 软件 打开

这段时间,遇到了内存泄漏的问题。软件运行过程中内存越来越高,最终致使系统卡顿。
作为一只菜鸟,折腾一天无果。请教了代老师,在解决问题的过程中受益良多,现分享一种系统自带的内存分析方法。
该方法好像跟是哪种编程语言关系不大,但我只会C#,就拿C#举例。
1、先跑软件(别用Debug模式,直接运行.exe文件),让其内存不断增大,最好增大到几倍,项目软件不复杂,大概增加到了200MB,然后进行分析
2、打开任务管理器(这个都会吧),右击我们自己编译的软件,点击“创建转储文件©”

 

 

等待一个进度条之后,转储进程会提示“已成功创建文件”,并给出目录地址。

 

3、按照提示的地址找到文件。(AppData文件夹是个隐藏文件,记得打开隐藏文件)
或者直接用Win+R打开运行窗口,输入%temp%,快速打开目录。
然后将转储文件剪切出来。

 

4、然后使用Visual Studio打开转储文件,点击“调试托管内存”按钮。

 


5、经过等待,就会出现程序中各个类的内存情况,然后进行分析。

 


怎么分析就不用说了吧,就看哪里跟自己的设计不符。1、占内存大的类优先考虑,2、对象数量过多的优先考虑。

标签:泄漏,文件,C#,转储,内存,软件,打开
From: https://www.cnblogs.com/bdqczhl/p/17515060.html

相关文章

  • TCP协议的握手与分手
    TCP的三次握手四次分手TCP协议建立连接总共需要进行三步主机A请求主机BB确认收到请求回复AA确认收到B的回复三次握手都是进行同一个端口(随机端口)SYN:请求同步ACK:确认同步#第一次握手,从主机A的60517端口发送到远程22端口,[SYN]请求60517→22[SYN]Seq=0Win=642......
  • redis cluster集群搭建
    redis6.2使用docker搭建rediscluster集群(3主3从)所有的操作都在根目录~/Developer/docker-compose/redis-cluster-6.2执行创建配置文件为了方便,写了个shell脚本,懒人必备createConfig.shforportin$(seq63816386);doconf_dir=./${port}/confconf_file=$......
  • nacos源码分析
    下载Nacos源码访问GitHub官网地址:https://github.com/alibaba/nacos找到其release页面:https://github.com/alibaba/nacos/tags,找到其中的1.4.2.版本:点击进入后,下载Sourcecode(zip):导入Demo工程这里不做演示,可以自己建一个:结构说明:cloud-source-demo:项目父目录cloud-......
  • Flutter的ClipRRect控件介绍
    ClipRRect简介ClipRRect(RoundedRectangleClip)是Flutter中的一个控件,用于将其子控件剪裁为圆角矩形形状。使用场景ClipRRect通常在需要给子控件添加圆角效果时使用。它可以用于创建圆角图片、圆角容器等各种UI元素。主要属性borderRadius(BorderRadius):用于定义圆角的弧度。可......
  • 2023最新版本Pycharm安装教程【2023.1.3】
    前言本文方法可以安装使用截止当前2023.1.3最新版本Pycharm,过程非常简单,按照下面的步骤来一分钟即可搞定。1.下载安装已经安装过的可以跳过该步骤!下载到官网地址下载正版安装包JetBrainsPycharm官网下载地址安装开始安装选择安装路径3.桌面快捷方式勾选创建妆面快捷方式和Pytho......
  • (转)如何实现 Cut-Out Effect
    原文地址:ThinkingAboutTheCut-OutEffect:CSSorSVG?Cut-OutEffect,就是月牙效果,或者叫,咬一口效果 1.UserAvatar月牙效果1.1-ClipPathProsCross-browser,worksonallmajorversionsofChrome,Edge,Firefox,andSafari.Goodforveryb......
  • docker部署Zookeeper+Kafka+Storm
    docker部署Zookeeper+Storm+Kafka安装docker信任Docker的GPG公钥:curl-fsSLhttps://repo.huaweicloud.com/docker-ce/linux/ubuntu/gpg|sudoapt-keyadd-`添加软件仓库:sudoadd-apt-repository"deb[arch=amd64]https://repo.huaweicloud.com/docker-ce/linux/ubun......
  • 11celery介绍架构和安装,celery执行异步任务,包结构celery,celery执行延迟任务和定时任务
    1celery介绍架构和安装#celery:分布式的异步任务框架,主要用来做: -异步任务-延迟任务-定时任务---》如果只想做定时任务,可以不使用celery,有别的选择#celery框架,原理1)可以不依赖任何服务器,通过自身命令,启动服务(内部支持socket)2)celery服务为为其他项目......
  • oracle函数 wm_concat 与 listagg
    1.wm_concatselectt.type,to_char(wm_concat(t.id||'---'||t.seq))asid_seq,to_char(wm_concat(t.seq))asseqsfrom(select'A'type,'A001'id,1seqfromdualunionallselect'A'type,'A002......
  • 2023最新版本Pycharm安装教程【2023.1.3】
    前言本文方法可以安装使用截止当前2023.1.3最新版本Pycharm,过程非常简单,按照下面的步骤来一分钟即可搞定。1.下载安装已经安装过的可以跳过该步骤!下载到官网地址下载正版安装包JetBrainsPycharm官网下载地址安装开始安装选择安装路径3.桌面快捷方式勾选创建妆面......