2008-08-22 22 views
1

這主要面向桌面應用程序開發人員。
如何設計一個可以很好地與GC玩的緩存塊?
如何告訴GC我剛剛完成了緩存掃描,是時候進行GC了?
如何準確衡量什麼時候執行緩存清理?託管語言的高速緩存方案

有沒有預建的緩存方案,我可以借鑑一些想法?

回答

1

雖然我顯然不能說出你的應用程序的細節,但在大多數情況下,你不應該將你的緩存實現與GC的工作方式的一些預期期望聯繫起來。正如Stu所提到的,調用GC.Collect()會強制集合(對於特定代中的重載),但更多時候會導致性能下降,而不僅僅是讓GC自行管理。

如果您發現(在進行一些真正的性能測試後)需要與GC進行交互,請確保您考慮到框架當前具有的不同類型的GC(有關更多信息,請參閱here)。