加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – .net内存使用情况,决定私有字节大小的因素

发布时间:2020-12-15 21:37:29 所属栏目:百科 来源:网络整理
导读:私人字节困惑! 目前正在使用ANTS分析器分析我们的C#.NET应用程序的内存使用情况.以下是我们在启动后使用屏幕上显示的主要表单进行的调查结果.没有使用其他功能. Gen 0堆 – 5.8MB 第1代堆 – 2.5MB 第2代堆 – 13.9MB 所有堆中的字节数 – 17MB 大对象堆 –
私人字节困惑!

目前正在使用ANTS分析器分析我们的C#.NET应用程序的内存使用情况.以下是我们在启动后使用屏幕上显示的主要表单进行的调查结果.没有使用其他功能.

Gen 0堆 – 5.8MB
第1代堆 – 2.5MB
第2代堆 – 13.9MB
所有堆中的字节数 – 17MB
大对象堆 – 0.7MB
专用字节数 – 130MB
工作集 – 150MB

如果所有堆中的字节只有17MB,为什么我们有这么大的专用字节分配?是由系统分配的私有字节还是私有字节从0开始扩展,因为它被软件填充?即私有字节是一个泡沫,实际上只能部分使用?如果是这样,是什么决定了它的大小?

解决方法

专用字节是无法与其他进程共享的进程的所有虚拟分配(即,排除代码和内存映射文件).这将包括所有NT(本机)堆,任何托管堆,堆栈和应用程序明确分配的任何内存( VirtualAlocEx).

您可以使用!dumpheap -stat来详细使用您的CLR内存使用情况.见CLR Memory Leak

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读