【发布时间】:2012-02-17 12:32:49
【问题描述】:
如果在一个类中我有一个 ConcurrentHashMap 实例,该实例将被多个线程修改和读取,我可能会这样定义:
public class My Class {
private volatile ConcurrentHashMap<String,String> myMap = new ConcurrentHashMap<String,String>();
...
}
将final 添加到 myMap 字段会导致错误提示我只能使用 final 或 volatile。为什么不能两者兼得?
【问题讨论】:
标签: java multithreading syntax