8.并发集合

并发集合

并发集合

Java程序提供了一些可以用于并发程序中的数据集合,他们不会引起任何问题。一般来说,Java提供两类适用于并发应用的集合

堵塞式集合(Blocking Collection)

这类集合包括添加和移除数据的方法。当集合已满或者为空的时候,被调用的添加或者移除方法就不能立即被执行,那么调用这个方法的线程被堵塞,一直到该方法可以被成功执行

非堵塞式集合(Non-Blocking Collection)

这类集合也包括添加和移除数据的方法,如果不能立即被执行,则返回null或者抛出异常,但是调用这个方法的线程不会被堵塞。

非堵塞式列表:ConcurrentLinkedDeque
堵塞式列表:LinkedBlockingDeque
按优先级排序列表元素的堵塞式列表:PriorityBlockingQueue
带有延迟列表元素的堵塞式列表:DeplayQueue
非堵塞式可遍历映射对应的实现类:ConcurrentSkipListMap
随机数字对应的实现类:ThreadLocalRandom
原子变量对应的实现类:AtomicLong 和 AtomicIntegerArray

本文如有任何问题,请留言指教,以免误导他人

上一篇:24.锁的监控与处理浅谈


下一篇:【DB笔试面试350】在Oracle数据库中,如何判断哪个SESSION正在连接以及它们等待的资源?