我的程序中有一个HashMap
由多个线程访问,并且偶尔由单个线程设置。
例如:
Map<String, String> myMap = new HashMap<String, String>();
这是由多个线程访问的。每小时一次,单个线程调用:
myMap = myRefreshedVersionOfTheMap;
所以我的问题是这是否是线程安全的。如果两个地图总是有 key ,读取线程是否有可能在不存在"importantKey"
的时候访问地图?"importantKey"
编辑:
感谢答案,我意识到这个问题实际上是独立于HashMap
. 这更多是关于对象引用分配的问题。