OutOfMemoryException - 出于想法II

时间:2010-03-25 08:51:44

标签: .net memory-leaks out-of-memory taskmanager

此问题与我的previous question相关。

故事情节:我有一个耗费大量内存的.NET应用程序 如果您查看任务管理器 VMSize 。我试图找出消耗这么多内存的东西。

您在下图中看到VM大小 2,46 GB alt text http://i060.radikal.ru/1003/1c/c2c144853eb5.jpg

好的,现在我正在查看.net性能计数器

alt text http://s006.radikal.ru/i213/1003/30/dd42433cd12d.jpg

提交保留字节仅加起来 1,2 GB

现在让我们来看看windb sos调试。 让我们运行eeheap -gc命令

alt text http://s001.radikal.ru/i194/1003/e8/9da33856ed58.jpg

GC使用的堆大小仅 340 MB 。剩下的二手记忆在哪里? 我需要发现为什么TaskManager中的WM大小是2.4 GB

更新

--------------------------------------
Total LoaderHeap size: 0x74c000(7651328)bytes
=======================================
Number of GC Heaps: 1
generation 0 starts at 0x0000000081b89d00
generation 1 starts at 0x0000000081a83b20
generation 2 starts at 0x0000000001281000
ephemeral segment allocation context: none
         segment            begin         allocated             size
0000000001280000 0000000001281000  00000000057416a0 0x00000000044c06a0(72091296)
000000004ad00000 000000004ad01000  00000000513c1cc8 0x00000000066c0cc8(107744456)
000000007fff0000 000000007fff1000  000000008994e310 0x000000000995d310(160813840)
Large object heap starts at 0x0000000011281000
         segment            begin         allocated             size
0000000011280000 0000000011281000  00000000112c67d0 0x00000000000457d0(284624)
Total Size        0x14523e48(340934216)
------------------------------
GC Heap Size        0x14523e48(340934216)

1 个答案:

答案 0 :(得分:1)

苔丝在其他内存使用来源上做了一篇文章。查看https://blogs.msdn.com/tess/archive/2006/02/15/532804.aspx