线程的堆栈是否报告为任务管理器中使用的内存?

时间:2009-08-05 13:45:25

标签: memory-management taskmanager

我的同事和我正在尝试跟踪应用程序中的内存问题,在我的研究中,我发现了一个blog entry,它讨论了默认情况下每个线程如何获得1MB堆栈。我们的应用程序恰好创建了很多线程,因此我们编写了一个快速测试程序,以确保我们确切了解发生了什么。测试应用程序(C#)只需创建300个线程,但任务管理器仍然只显示22MB内存。堆栈内存是否由任务管理器计算,或者是否正在进行其他操作?

1 个答案:

答案 0 :(得分:1)

任务管理器不是确定内存消耗的最佳工具。相反,请下载MemProfilerRedGate's Memory Profiler

等工具的免费试用版

请勿使用任务管理器中的mem usage列进行诊断或分析。使用Perfmon计数器,特别是Private Bytes和特定的.NET计数器,它们将揭示内存泄漏等问题。

也可能感兴趣:Memory Usage Auditing For .NET Applications