线程安全操作HashMap

 第一种,加锁

 

  1. HashMap<String, String> map = new HashMap<String, String>();  
  2. synchronized(map)  
  3. {  
  4.     if(map.containsKey("xxx"))  
  5.     {  
  6.         map.put("key""value");  
  7.     }  
  8. }  

 

 

第二种,封装HashTable

 
  1. public synchronized void putIfAbsent(String key, String value)  
  2. {  
  3.     if(map.containsKey("xxx"))  
  4.     {  
  5.         map.put("key""value");  
  6.     }  
  7. }  

 

第三种, 使用ConcurrentHashMap

 

第四种,Collections.synchronizedMap()方法

你可能感兴趣的:(java,职场,线程安全,休闲)