并发集合
并发集合
Java程序提供了一些可以用于并发程序中的数据集合,他们不会引起任何问题。一般来说,Java提供两类适用于并发应用的集合
堵塞式集合(Blocking Collection)
这类集合包括添加和移除数据的方法。当集合已满或者为空的时候,被调用的添加或者移除方法就不能立即被执行,那么调用这个方法的线程被堵塞,一直到该方法可以被成功执行
非堵塞式集合(Non-Blocking Collection)
这类集合也包括添加和移除数据的方法,如果不能立即被执行,则返回null或者抛出异常,但是调用这个方法的线程不会被堵塞。
非堵塞式列表:ConcurrentLinkedDeque
堵塞式列表:LinkedBlockingDeque
按优先级排序列表元素的堵塞式列表:PriorityBlockingQueue
带有延迟列表元素的堵塞式列表:DeplayQueue
非堵塞式可遍历映射对应的实现类:ConcurrentSkipListMap
随机数字对应的实现类:ThreadLocalRandom
原子变量对应的实现类:AtomicLong 和 AtomicIntegerArray
本文如有任何问题,请留言指教,以免误导他人