1

这主要面向桌面应用程序开发人员。
如何设计一个与 GC 配合得很好的缓存块?
我如何告诉 GC 我刚刚进行了缓存扫描,是时候进行 GC 了?
如何准确测量何时进行缓存扫描?

是否有任何我可以借鉴的预建缓存方案?

4

2 回答 2

1

所有你需要知道的(然后是一些):

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

哦,还有 GC.Collect() 强制收集。

于 2008-08-22T19:09:13.417 回答
1

虽然我显然无法谈论您的应用程序的细节,但在大多数情况下,您不应将缓存实现与对 GC 工作方式的预期预期联系起来。正如 Stu 提到的,调用 GC.Collect() 将强制收集(对特定代进行重载),但通常不这样做会导致性能比让 GC 自行管理更差。

如果您确实发现(在进行了一些实际性能测试之后)需要与 GC 交互,请确保您考虑了框架当前具有的不同类型的 GC(有关更多信息,请参见此处)。

于 2008-08-22T19:44:11.367 回答