Java: Java中常见的线程安全的类

一、Java.util.concurrent.atomic包下的原子类 AtomicXXXX(Atomic意为原子的)数组

例如:AtomicInteger AtomicBoolean AtomicLong安全

AtomicIntegerArray、AtomicLongArray:该类是Java对Integer数组和Long数组支持的原子性操做;atom

二、常见的集合类线程

List:Vector (效率低,不建议用)code

Map:ConcurrentHashMap HashTable ConcurrentSkipListMap继承

Set:ConcurrentSkipListSet接口

ConcurrentSkipListSet和TreeSet,它们虽然都是有序的集合。可是,第一,它们的线程安全机制不一样,TreeSet是非线程安全的,而ConcurrentSkipListSet是线程安全的。第二,ConcurrentSkipListSet是经过ConcurrentSkipListMap实现的,而TreeSet是经过TreeMap实现的。ip

三、可变字符串:StringBuffer也是线程安全字符串

四、BlockingQueue 和 BlockingDeque
BlockingDeque接口继承了BlockingQueue接口, 
BlockingQueue 接口的实现类有ArrayBlockingQueue ,LinkedBlockingQueue ,PriorityBlockingQueue 而BlockingDeque接口的实现类有LinkedBlockingDeque 
BlockingQueueBlockingDeque 都是经过使用定义为final的ReentrantLock做为类属性显式加锁实现同步的同步

相关文章
相关标签/搜索