[英]java ConcurrentHashMap of Integer vs HashMap of AtomicInteger vs ConcurrentHashMap of AtomicInteger
[英]HashMap or ConcurrentHashMap at Java Controllers?
如此處所述: Java中的ConcurrentHashMap? Java上的並發哈希圖是線程安全的。 Java控制器用於Web請求,並且可以從Web同時調用。
我的問題是:我應該在Java中使用並發哈希圖而不是哈希圖嗎?
如果將要進行並發讀取和一次寫入或兩次並發寫入,則僅需要ConcurrentHashMap
。 如果初始化后再也沒有更改地圖,那么常規的HashMap
就足夠了。
控制器通常不應包含任何特定於請求的狀態(任何此類狀態都應作為參數傳遞給方法),並且如果以這種方式設計控制器,則控制器內不需要任何同步。
如果您有多個線程訪問同一個哈希圖,則需要同步此訪問。
您可以通過使用已實現此功能的對象(例如ConcurrentHashMap)來做到這一點,或者編寫自己的同步代碼並使用普通的HashMap。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.