【发布时间】:2013-07-12 06:39:54
【问题描述】:
我有一个线程应用程序,每个线程可能会将特定项目插入地图,或从地图中删除其插入的项目,但对于任何其他线程,他们只会使用查找或通过迭代器遍历整个地图。
同样,每个线程只会在地图上插入或删除一个其特定项目。
在这种情况下,我应该在插入或擦除之前添加锁定以避免竞争吗?那怎么办?
【问题讨论】:
标签: thread-safety stdmap
我有一个线程应用程序,每个线程可能会将特定项目插入地图,或从地图中删除其插入的项目,但对于任何其他线程,他们只会使用查找或通过迭代器遍历整个地图。
同样,每个线程只会在地图上插入或删除一个其特定项目。
在这种情况下,我应该在插入或擦除之前添加锁定以避免竞争吗?那怎么办?
【问题讨论】:
标签: thread-safety stdmap
不看代码,我只能说你使用 ConcurrentHashMap 来满足你的需要。您可能还想阅读:What's the difference between ConcurrentHashMap and Collections.synchronizedMap(Map)?
【讨论】: