【发布时间】:2009-02-19 12:50:12
【问题描述】:
在我的 ASP.NET 应用程序中,我有一个包含大量对象的字典(假设有 1M 大,以后可能会更大),存储在字典中的对象是引用类型而不是结构类型,该字典旨在用作此类对象的缓存(我有理由不使用 ASP.NET 缓存来缓存此类对象,但我将其用于缓存其他内容)。
这会导致 GC 出现问题吗?我一直听说长寿对象会影响 GC 的性能并导致它在收集过程中花费更多时间,有没有办法避免这种情况?据我了解,字典(和对象)应该最终出现在 Gen2 中,除非系统内存不足,否则 GC 不会收集(如果我错了请纠正我),那么如果系统有很多怎么办内存,GC仍然会以相同的频率收集Gen2吗?肯定还有其他应用会长期缓存大量数据,不知道他们是如何避免GC的问题的。
非常感谢任何建议...
【问题讨论】:
标签: .net asp.net performance garbage-collection