首页 > Java开发 > Map加锁操作小例子

Map加锁操作小例子

所谓加锁,即对一些公用的资源操作的时候进行锁定,操作完之后释放,写个小例子:

[java][/java]
  1. package com.tycyjd.action;
  2. import java.util.HashMap;
  3. import java.util.Map;
  4. public class MyTest {
  5.     private static Map<String, Object> map = new HashMap<String, Object>();
  6.     private static Map<String, Object> preMap = new HashMap<String, Object>();
  7.     // 加锁机制
  8.     public static synchronized boolean setCartMap(Map<String, Object> checkMap) {
  9.         preMap = map;
  10.         System.out.println("oldMap:" + map.toString());
  11.         for (Map.Entry<String, Object> entry : checkMap.entrySet()) {
  12.             if (null != map.get(entry.getKey())) {
  13.                 map = preMap;
  14.                 System.out.println("newMap:" + map.toString());
  15.                 return false;
  16.             } else {
  17.                 map.put(entry.getKey(), entry.getValue());
  18.             }
  19.         }
  20.         System.out.println("newMap:" + map.toString());
  21.         // map.clear();
  22.         return true;
  23.     }
  24. }

本文固定链接: http://www.devba.com/index.php/archives/2566.html | 开发吧

报歉!评论已关闭.