本文共 538 字,大约阅读时间需要 1 分钟。
1. 使用 synchronized 关键字,代码如下 synchronized(anObject) { value = map.get(key);} 2、使用 JDK1.5提供的锁(java.util.concurrent.locks.Lock)。代码如下 lock.lock(); value = map.get(key); lock.unlock(); 3、使用 JDK1.5 提供的读写锁(java.util.concurrent.locks.ReadWriteLock)。代码如下 rwlock.readLock().lock(); value = map.get(key); rwlock.readLock().unlock(); 4、使用 JDK1.5 提供的 java.util.concurrent.ConcurrentHashMap 类。该类将 Map 的存储空间分为若干块,每块拥有自己的锁,大大减少了多个线程争夺同一个锁的情况。代码如下 value = map.get(key); //同步机制内置在 get 方法中第四种是最快速的,接近同步操作 转载于:https://my.oschina.net/hanzhankang/blog/204764