執行緒安全操作HashMap
第一種,加鎖
- HashMap<String, String> map = new HashMap<String, String>();
- synchronized(map)
- {
- if(map.containsKey(“xxx”))
- {
- map.put(“key”, “value”);
- }
- }
第二種,封裝HashTable
- public synchronized void putIfAbsent(String key, String value)
- {
- if(map.containsKey(“xxx”))
- {
- map.put(“key”, “value”);
- }
- }
第三種, 使用ConcurrentHashMap
第四種,Collections.synchronizedMap()方法
本文轉自 dogegg250 51CTO部落格,原文連結:http://blog.51cto.com/jianshusoft/617285,如需轉載請自行聯絡原作者
相關文章
- HashMap為何執行緒不安全HashMap執行緒
- 執行緒安全使用 HashMap 的四種技巧執行緒HashMap
- HashMap為何執行緒不安全?HashMap,HashTable,ConcurrentHashMap對比HashMap執行緒
- 深入解讀HashMap執行緒安全性問題HashMap執行緒
- HashMap1.7與1.8執行緒不安全講解HashMap執行緒
- JDk1.7 HashMap原始碼解析——執行緒安全問題JDKHashMap原始碼執行緒
- 執行緒操作執行緒
- 29-HashMap 為什麼是執行緒不安全的?HashMap執行緒
- 執行緒3--執行緒安全執行緒
- JavaConcurrentLinkedQueue佇列執行緒安全操作Java佇列執行緒
- 執行緒安全和執行緒不安全理解執行緒
- 執行緒安全執行緒
- 多執行緒系列之 執行緒安全執行緒
- iOS 多執行緒之執行緒安全iOS執行緒
- iOS多執行緒之執行緒安全iOS執行緒
- Java執行緒(一):執行緒安全與不安全Java執行緒
- 多執行緒操作執行緒
- 【多執行緒總結(二)-執行緒安全與執行緒同步】執行緒
- 什麼是執行緒安全和執行緒不安全執行緒
- 【Java多執行緒】執行緒安全的集合Java執行緒
- 執行緒安全(二)執行緒
- Java執行緒安全Java執行緒
- Java - 執行緒安全Java執行緒
- HashMap多執行緒併發問題分析HashMap執行緒
- iOS 在主執行緒操作UI不能保證安全iOS執行緒UI
- Java 多執行緒基礎(四)執行緒安全Java執行緒
- iOS多執行緒安全-13種執行緒鎖?iOS執行緒
- Java 執行緒常用操作Java執行緒
- 執行緒的基本操作:新建和終止執行緒執行緒
- 多執行緒,你覺得你安全了?(執行緒安全問題)執行緒
- PHP的執行緒安全與非執行緒安全版本的區別PHP執行緒
- 執行緒安全性執行緒
- 多執行緒安全(一)執行緒
- java執行緒安全LockJava執行緒
- EntityFrameworkDbContext執行緒安全FrameworkContext執行緒
- strerror執行緒安全分析Error執行緒
- 容器不是執行緒安全執行緒
- 併發程式設計之多執行緒執行緒安全程式設計執行緒