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