所以在 .NET 应用程序中,我需要将大约 200 万个项目保存在内存中以进行处理,1 对 1 将这些项目保存在 Stack 集合中,比将它们保存在 List 集合中要好,假设每次从堆栈对象中弹出一个项目时堆栈对象使用的内存将保持最小化,或者堆栈分配的内存将保持不变,直到堆栈设置为空或清除。
对不起,如果我不能以正确的方式表达问题.. 但这里有另一种方式,当使用 Stack 集合时,每次从堆栈中拉出项目时,堆栈使用的内存是否会最小化.
提前致谢
最佳答案
没有区别。 Stack 的“Pop”方法永远不会减小内部数组的大小。 “Push”方法在达到限制时将大小翻倍。
我使用了 .NET Reflector发现这一点。
关于.net - 在 .NET 的内存使用方面,使用 Stack<T> 会比 List<T> 更好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/240863/