java.util.concurrent并发包一览

并发容器

阻塞队列

BlockingQueue,阻塞队列接口

BlockingDeque,双端阻塞队列接口

ArrayBlockingQueue,数组构成的有界阻塞队列

LinkedBlockingQueue,链表构成的有界阻塞队列

LinkedBlockingDeque,链表结构的双端阻塞队列

DelayQueue,使用优先级实现的无界阻塞队列,并且元素是Delay的子类,保证元素在到达一定时间才可以取到

PriorityBlockingQueue,支持优先级排序的无解阻塞队列

SynchronousQueue,不存储元素的阻塞队列,生产者放入队列的操作会被阻塞,直到消费者过来取

非阻塞队列

ConcurrentLinkedDequeue,链表实现的双端非阻塞队列

ConcurrentLinkedQueue,链表实现的非阻塞队列

转移队列

TransferQueue,转移队列接口,生产者尝试直接把元素直接转移给消费者

LinkedTransferQueue,转移队列的链表实现,比SynchronousQueue更快

跳表容器

ConcurrentSkipListMap

ConcurrentSkipListSet

ConcurrentTransferQueue

其他容器

CopyOnWriteArrayLIst(Set),写时拷贝

COncurrencyHashMap,并发HashMap

同步设备

Semaphore,信号量

信号量适合用于控制一定数量的线程并执行某些任务,比如只允许同时有size个线程再做一件事情。

CountDownLatch 倒数同步

一个线程调用await方法后,会阻塞地等待计数器被调用countDown直到变成0,可以用来控制几个子任务完成以后再实行某个总结性的任务。

CyclicBarrier 多路线程同步等待

利用await方法实现计数器加1功能,达到指定界限,线程就可以继续往下执行。

Exchanger 线程数据交换

用于交互两个线程之间的对象

原子对象

AtomicBoolean 

AtomicInteger

AtomicIntegerArray

AtomicLong

AtomicLongArray

AbstractQueuedSynchronizer,为实现依赖于先进先出队列的阻塞锁和相关同步器(信号量、事件等等)提供的一个框架,它依靠int值来表示状态

ReadWriteLock,读写锁,读锁是共享锁,写锁是独占锁

ReentrantLock

ReentrantReadWriteLock

Condition

执行器和线程池

Executors

ExecutorService

ThreadPoolExecutor

ScheduledExecutor

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值