这主要面向桌面应用程序开发人员。
如何设计一个与GC配合良好的缓存块?
如何告诉GC我刚刚进行了缓存扫描,是时候进行GC了?
如何准确测量何时进行缓存扫描?
是否有任何预先构建的缓存方案可以从中借用一些想法?
答案 0 :(得分:1)
答案 1 :(得分:1)
虽然我显然无法谈论您的应用程序的细节,但在大多数情况下,您不应将缓存实现与GC的工作方式结合起来。正如Stu所提到的,调用GC.Collect()将强制收集(具有特定代的重载),但更多时候这样做会导致性能更差,而不仅仅是让GC管理自己。
如果您确实发现(在进行了一些真正的性能测试之后)需要与GC进行交互,请确保考虑到框架当前具有的不同类型的GC(有关详细信息,请参阅here)