java.util.concurrent的并发 Collection
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java.util.concurrent的并发 Collection相关的知识,希望对你有一定的参考价值。
参考技术A除队列外,此包还提供了几个设计用于多线程上下文中的 Collection 实现:ConcurrentHashMap、CopyOnWriteArrayList 和 CopyOnWriteArraySet。
此包中与某些类一起使用的“Concurrent&rdquo前缀;是一种简写,表明与类似的“同步”类有所不同。例如,java.util.Hashtable 和 Collections.synchronizedMap(new HashMap()) 是同步的,但 ConcurrentHashMap 则是“并发的”。并发集合是线程安全的,但是不受单个排他锁定的管理。在 ConcurrentHashMap 这一特定情况下,它可以安全地允许进行任意数目的并发读取,以及数目可调的并发写入。需要通过单个锁定阻止对集合的所有访问时,“同步”类是很有用的,其代价是较差的可伸缩性。在期望多个线程访问公共集合的其他情况中,通常“并发”版本要更好一些。当集合是未共享的,或者仅保持其他锁定时集合是可访问的情况下,非同步集合则要更好一些。
大多数并发 Collection 实现(包括大多数 Queue)与常规的 java.util 约定也不同,因为它们的迭代器提供了弱一致的,而不是快速失败的遍历。弱一致的迭代器是线程安全的,但是在迭代时没有必要冻结集合,所以它不一定反映自迭代器创建以来的所有更新。
Java 并发工具包 java.util.concurrent 用户指南
参考:http://blog.csdn.net/defonds/article/details/44021605/
以上是关于java.util.concurrent的并发 Collection的主要内容,如果未能解决你的问题,请参考以下文章
java.util.concurrent的并发 Collection
Java_并发工具包 java.util.concurrent 用户指南(转)
高并发第八弹:J.U.C起航(java.util.concurrent)