欢迎来到 安卓源码空间!
安卓源码空间

                                       C#内存泄漏分析方法




这段时间,遇到了内存泄漏的问题。软件运行过程中内存越来越高,最终致使系统卡顿。


作为一只菜鸟,折腾一天无果。请教了代老师,在解决问题的过程中受益良多,现分享一种系统自带的内存分析方法。
该方法好像跟是哪种编程语言关系不大,但我只会C#,就拿C#举例。


1、先跑软件(别用Debug模式,直接运行.exe文件),让其内存不断增大,最好增大到几倍,项目软件不复杂,大概增加到了200MB,然后进行分析


2、打开任务管理器(这个都会吧),右击我们自己编译的软件,点击“创建转储文件©”


请添加图片描述


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


请添加图片描述


3、按照提示的地址找到文件。(AppData文件夹是个隐藏文件,记得打开隐藏文件)


或者直接用Win+R打开运行窗口,输入%temp%,快速打开目录。


然后将转储文件剪切出来。


请添加图片描述


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

请添加图片描述


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

请添加图片描述


怎么分析就不用说了吧,就看哪里跟自己的设计不符。


1、占内存大的类优先考虑,


2、对象数量过多的优先考虑。





copyright@ 2020-2028  安卓源码空间网版权所有   

备案号:豫ICP备2023034476号-1号