单线程环境下可以使用HashMap和TreeMap。如果不是遍历时需要按照Key的排序来返回结果,应该采用HashMap。
多线程环境下可以使用以下四种Map容器。
1)Collections.synchronizedMap(new HashMap());
2)ConcurrentHashMap
3)Collections.synchronizedSortedMap(new TreeMap())
4)ConcurrentSkipListMap
如果不需要遍历时需要按照Key的排序来返回结果,首选Concur...
分类:
编程语言 时间:
2015-01-30 17:41:51
阅读次数:
536
首先要了解下java1.6中的ConcurrentMap ,他是一个线程安全的Map实现,特别说明的是在没有特别需求的情况下可以用ConcurrentHashMap。我是想学习一下读写锁的应用,就自己实现了一个SimpleConcurrentHashMap...
分类:
编程语言 时间:
2015-01-30 06:48:50
阅读次数:
412
题外话,文章中有大量的标识1 标识2,大家可以用ctrl+f来查找。
构成缓存的类
主要就是以下两个:
com.opensymphony.xwork2.inject.util.ReferenceCache
com.opensymphony.xwork2.inject.util.ReferenceMap前者继承自后者。
我们先看看ReferenceMap
public class ...
分类:
其他好文 时间:
2015-01-24 21:27:29
阅读次数:
327
1,Map:映射表数据结构,通过key-value完成映射。HashMap的子实现主要包括:HashMap、LinkedHashMap、TreeMap、WeakHashMap、ConcurrentHashMap、IdentityHashMap。以下总结摘录自《Thingking In Java》
-1,HashMap:使用Map集合的默认选择。因为HashMap对速度进行了优化。Hash...
分类:
其他好文 时间:
2015-01-22 09:28:00
阅读次数:
281
一、前言:JDK为我们提供了很多Map接口的实现,使得我们可以方便地处理Key-Value的数据结构。当我们希望快速存取键值对时我们可以使用HashMap。当我们希望在多线程并发存取键值对时,我们会选择ConcurrentHashMap。TreeMap则会帮助我们保证数据是按照Key的自然顺序或者c...
分类:
其他好文 时间:
2015-01-18 15:44:01
阅读次数:
409
HashTable: 不允许null的key或value, 线程安全HashMap: 允许一个null的key, 无限的null value, 非线程安全LinkedHashMap: HashMap的子类, 但是key的顺序与添加时一致, 且复制不会改变顺序ConcurrentHashMap: 和H...
分类:
其他好文 时间:
2015-01-17 06:20:27
阅读次数:
155
并发编程 01—— ConcurrentHashMap并发编程 02—— 阻塞队列和生产者-消费者模式并发编程 03—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程 04—— Callable和Future并发编程 05—— CompletionService : ...
分类:
其他好文 时间:
2015-01-15 15:38:34
阅读次数:
295
Java 理论与实践: 并发集合类DougLea的 util.concurrent 包除了包含许多其他有用的并发构造块之外,还包含了一些主要集合类型 List 和 Map 的高性能的、线程安全的实现。在本月的 Java理论与实践中,BrianGoetz向您展示了用 ConcurrentHashMap...
分类:
编程语言 时间:
2015-01-15 14:16:07
阅读次数:
208
《java并发编程》的第二章2.1. 什么是线程安全性 讲到线程安全性的时候给出了一个例子考虑下面的代码片段,它迭代一个Vector 中的元素。尽管Vector 的所有方法都是同步的,但是在多线程的环境中不做额外的同步就使用这段代码仍然是不安全的,因为如果另一个线程恰好在错误的时间里删除了一个元素,...
分类:
其他好文 时间:
2015-01-10 22:19:06
阅读次数:
274
Java并发编程实践 目录并发编程 01—— ConcurrentHashMap并发编程 02—— 阻塞队列和生产者-消费者模式并发编程 03—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程 04—— Callable和Future并发编程 05—— Complet...
分类:
其他好文 时间:
2015-01-07 20:36:07
阅读次数:
167