首先,我將描述我想要的內容,然後詳細說明我正在考慮的可能性。我不知道哪個是最好的,所以我想要一些幫助。Hash Map的線程安全實現
我有一個散列圖,我在Servlet
上讀取和寫入操作。現在,由於這個Servlet
在Tomcat上,我需要哈希映射是線程安全的。基本上,當它被寫入時,沒有其他東西應該寫入它,也沒有東西能夠讀取它。
我看過ConcurrentHashMap
,但注意到它的get方法不是線程安全的。然後,我看到了鎖和一些叫做synchronized的東西。
我想知道哪個是最可靠的方法。
ConcurrentHashMap.get不是線程安全的方式?你在尋找什麼級別的粒度?通過「當它被寫入」時,你的意思是說將會有多個* put操作,還是每個人都是原子的就足夠了? –
看到API文檔,我認爲它不是線程安全的。如果說3個人決定進行相同的放置操作,那麼對於哈希映射可以有多個放置操作。 – pratnala
@pratnala事實上,它允許併發操作不會使它不是線程安全的。 – assylias