Ron*_*onK 6 java concurrency thread-local
我最近看到一段代码使用了一个ThreadLocal对象并保留ConcurrentHashMap在其中.
这有什么逻辑/好处,还是多余的?
如果对并发hashmap 的唯一引用位于其中ThreadLocal,则hashmap显然仅从单个线程引用.在这种情况下,我会说它完全是多余的.
但是,不难想象某人与其他线程"共享"线程本地存储的hashmap:
ThreadLocal<ConcurrentHashMap<String, String>> tl = ...
// ...
final ConcurrentHashMap<String, String> props = tl.get();
EventQueue.invokeLater(new Runnable() {
public void run() {
props.add(key.getText(), val.getText());
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
234 次 |
| 最近记录: |