3
我們使用ConcurrentHashMap維護緩存通常需要刷新緩存什麼是刷新緩存的最佳途徑?ConcurrentHashMap.clear()讀線程會發生什麼?
1.更新緩存,刪除所有舊密鑰。
2.清除緩存並再次從內容中插入新密鑰。
案例1:所有讀取的線程不會被阻塞,一旦更新,它們將獲得更新的值。第二種情況:這裏我的問題當我們要清除緩存時,讀取線程會發生什麼?它們是否會得到空值?
更新緩存的最佳策略是什麼?
所以遵循策略1即更新所有緩存並刪除舊密鑰比策略2好得多嗎? – 2013-04-28 03:29:22
我會選擇策略1,否則在填寫地圖時,讀取線程會變爲空值。 – 2013-04-28 03:46:52
如何使用'synchronized'封裝調用以'clear'調用 – 2017-12-08 20:27:50