【发布时间】:2011-02-21 03:06:39
【问题描述】:
我正在使用WeaekHashMap 来实现缓存。我想知道我是否正在迭代这个映射的键,同时垃圾收集器正在积极地从这个映射中删除键,我会收到 ConcurrentModificationException 吗?
我不这么认为,因为据我所知,并发修改异常是由于应用程序代码中的错误而发生的,开发人员忘记了同一个映射是由其他线程共享/使用的,在这种情况下,它不应该发生。但是想知道当 WeakHashMap 不同步时 JVM 会如何处理呢?
【问题讨论】:
-
弱引用无论如何都不适合缓存——它们可以立即被清除,而不是等待垃圾收集器(也不是等待垃圾收集器是一个很好的策略)。
标签: java