使用弱引用是我從未見過的實現(xiàn),所以我試圖弄清楚它們的用例是什么以及實現(xiàn)如何工作。什么時候需要使用WeakHashMap或者WeakReference它是如何使用的?
3 回答

智慧大石
TA貢獻1946條經(jīng)驗 獲得超3個贊
要明確的一個區(qū)別是a WeakReference
和a 之間的區(qū)別SoftReference
。
基本上WeakReference
,一旦被引用的對象沒有硬引用,JVM就會急切地想要GC-d 。一個SoftReference
在另一方面d對象,往往會被垃圾收集器留約,直到它真正需要回收內(nèi)存。
將值保存在WeakReference
s中的緩存將是非常無用的(在a中WeakHashMap
,它是弱引用的鍵)。SoftReferences
當(dāng)您想要實現(xiàn)可以使用可用內(nèi)存增長和縮小的緩存時,可以將值包裝起來
添加回答
舉報
0/150
提交
取消