内存使用量+ .net

时间:2009-03-20 06:07:33

标签: .net

.net 2005 ide中是否有办法找出函数内部变量的内存使用情况以及垃圾收集器释放内存的时间。

3 个答案:

答案 0 :(得分:1)

问题的第一部分:

您可以使用许多工具来分析应用程序的内存占用 - 直到各行代码。我可以推荐以下工具:

第二部分: GC中的.net不是确定性的。当应用程序没有空闲内存时会自动调用它。当GC将内存释放回免费商店时,没有工具会告诉您。

答案 1 :(得分:0)

您是否看过this question,其中包含一些方法,包括

System.Runtime.InteropServices.Marshal.SizeOf(...) 

您可以查看GC.RegisterForFullGCNotification以了解如何观看垃圾收集器

答案 2 :(得分:0)

我不确定你在这里问的是什么。如果您正在寻找特定对象的内存占用,最好的方法是WinDbg和SOS扩展。

http://msdn.microsoft.com/en-us/library/bb190764.aspx

这可以为您提供有关对象堆的大量信息,包括大小和代数信息。

这篇文章详细介绍了如何使用WinDbg来获取对象图的大小。它可能正是你要找的东西

http://www.eggheadcafe.com/articles/20060114.asp