java.util.HashTable:
-1 说明:Hashtable函数均为同步,是线程安全,key,value均不能为null。
-2 基本方法:get(), put(), remove(), clear(), putAll()
, contains(),containsKey(),keySet(),keys(),values()等
java.util.concurrent.ConcurrentHashMap:
-1 说明:安全版 HashMap,并且效率比HashTable高。其内部采用锁分离技术,允许并发修改
-2 基本方法遇上相同。
java.util.concurrent.CopyOnWriteArrayList:
-1 说明:线程安全的List,适用于读操作远多于写。
-2 基本方法:add、addAll、clear、clone、contains、get、isEmpty、
Iterator、remove、toArray()等
-3 相似:同理有
CopyOnWriteArraySet
CopyOnWrite机制介绍:
-1 机制:写时复制容器,即添加元素时,先将当前容器copy复制出一个新容器,然后再向当前容器添加。
-2 好处:不加锁就可并发读,因为当前容器不会添加任何元素,实现读和写不同的容器。
-3 使用注意点:减少扩容开销,尽量批量添加可减少复制次数。
使用CopyOnWrite不能保证实时,所以需要写入马上读到就不要用了。
Vector:
-1 说明:可克隆、相当于线程安全版ArrayList,源码方法是synchronized
-2 基本方法:与CopyOnWriteArrayList 类似,多了indexOf()得到元素下标
常用的StringBuffer与StringBuilder
-1 区别:StringBuffer线程安全,其方法加了synchronized