2013-11-09 50 views
0

在我的程序中,我使用了一個HashSet,我只會放入對象,我將never再次出去。條目是類,並且可以在該集合中獲得超過100,000條目。內存使用在這裏不是問題,但垃圾收集器是。我的CPU的45%去垃圾收集,我懷疑這是因爲大集合。防止垃圾收集器對象檢查

有沒有辦法讓垃圾回收器not檢查一個對象?我從不想刪除集合中的對象。

+1

是什麼讓ü這樣確保GC使用CPU的45%? –

+0

如何將文件存儲在文件中? – Deffiss

+0

@Deffiss如何在這裏幫助文件?他們存儲在一個HashSet快速訪問我猜... –

回答

3

.NET使用分代垃圾收集並考慮到您的場景,它最終會將所有對象移動到很少收集的第2代。 因此,除非這些對象被非常頻繁地更換,否則GC不應該成爲問題。

我會去一個內存分析器,看看究竟是收集,如果你是100%肯定GC吃45%的CPU