NavigableMap(java.util.concurre…

来源:互联网 发布:专用章是什么软件下载 编辑:程序博客网 时间:2024/06/05 15:59

java.util.concurrent并发包诸类概览


http://ifeve.com/concurrent-collections-6/

Java API提供的有趣的数据结构,并且你可以在并发应用程序中使用,它就是ConcurrentNavigableMap接口的定义。实现ConcurrentNavigableMap接口的类存储以下两部分元素:

  • 唯一标识元素的key
  • 定义元素的剩余数据

每部分在不同的类中实现。

Java API也提供了这个接口的实现类,这个类是ConcurrentSkipListMap,它实现了非阻塞列表且拥有ConcurrentNavigableMap的行为。在内部实现中,它使用SkipList来存储数据。SkipList是基于并行列表的数据结构,它允许我们获取类似二叉树的效率。使用它,你可以得到一个排序的数据结构,这比排序数列使用更短的访问时间来插入、搜索和删除元素。

注意:在1990年,由William Pugh引入Skip List。

当你往map中插入数据时,它使用key来排序它们,所以,所有元素将是有序的。除了返回具体的元素,这个类也提供了获取map的子map的方法。

在这个指南中,你将学习如何使用ConcurrentSkipListMap类来实现一个通讯录的map。

0 0
原创粉丝点击