首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.NET -不同的DebugDiag和perfmon GC堆大小结果

.NET -不同的DebugDiag和perfmon GC堆大小结果
EN

Stack Overflow用户
提问于 2013-09-02 17:50:40
回答 1查看 413关注 0票数 0

我正在使用DebugDiag 1.2和perfmon.exe来监控.NET应用程序的内存使用情况。

DebugDiag显示GC Heap Size为35.51MB,而对于同一时刻,perfmon显示#Bytes in all heaps为4.5MB。

为什么这两个值是不同的?它们代表的不是同一件事吗?

EN

回答 1

Stack Overflow用户

发布于 2014-01-18 19:49:57

“所有堆中的字节”表示应用程序当前正在使用的所有.NET对象所使用的内存,其中,GC堆大小实际上是在.NET堆中提交的内存。GC堆大小更大的原因是它包含了被标记为"FREE“的对象所使用的内存。.NET不会立即将标记为空闲并在下一次垃圾回收时释放的所有内存返回给操作系统,因此内存仍被标记为提交,并且仍在.net堆中,但不会被应用程序中的任何内容实际使用。

要对此有更多了解,请访问http://blogs.msdn.com/b/tess/archive/2005/11/25/496973.aspx并在该博客中搜索“免费”一词

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18570235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档