java8的JDK文档--Tutorial - Concurrency Lesson-并发集合(Concurrent Collections)
java.util.concurrent 包包括许多对 Java Collections Framework 的补充。这些最容易通过提供的集合接口进行分类:
- BlockingQueue 定义了一个先进先出的数据结构,当您尝试添加到完整队列或从空队列中检索时,该结构会阻塞或超时。
- ConcurrentMap 是 java.util.Map 的一个子接口,用于定义有用的原子操作。这些操作仅在键存在时才删除或替换键值对,或仅在键不存在时才添加键值对。使这些操作原子化有助于避免同步。ConcurrentMap 的标准通用实现是 ConcurrentHashMap,它是 HashMap 的并发模拟。
- ConcurrentNavigableMap 是 ConcurrentMap 的一个子接口,支持近似匹配。ConcurrentNavigableMap 的标准通用实现是 ConcurrentSkipListMap,它是 TreeMap 的并发类似物。
所有这些集合都通过在将对象添加到集合的操作与访问或删除该对象的后续操作之间定义发生前(happens-before)关系来帮助避免内存一致性错误。
原文如下:
引用自:
https://docs.oracle.com/javase/tutorial/essential/concurrency/collections.html