首先,我将描述我想要的内容,然后详细说明我正在考虑的可能性。我不知道哪个是最好的,所以我想要一些帮助。Hash Map的线程安全实现
我有一个散列图,我在Servlet
上读取和写入操作。现在,由于这个Servlet
在Tomcat上,我需要哈希映射是线程安全的。基本上,当它被写入时,没有其他东西应该写入它,也没有东西能够读取它。
我看过ConcurrentHashMap
,但注意到它的get方法不是线程安全的。然后,我看到了锁和一些叫做synchronized的东西。
我想知道哪个是最可靠的方法。
ConcurrentHashMap.get不是线程安全的方式?你在寻找什么级别的粒度?通过“当它被写入”时,你的意思是说将会有多个* put操作,还是每个人都是原子的就足够了? –
看到API文档,我认为它不是线程安全的。如果说3个人决定进行相同的放置操作,那么对于哈希映射可以有多个放置操作。 – pratnala
@pratnala事实上,它允许并发操作不会使它不是线程安全的。 – assylias