天天看點

8.并發集合并發集合

并發集合

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

并發集合

Java程式提供了一些可以用于并發程式中的資料集合,他們不會引起任何問題。一般來說,Java提供兩類适用于并發應用的集合

堵塞式集合(Blocking Collection)

這類集合包括添加和移除資料的方法。當集合已滿或者為空的時候,被調用的添加或者移除方法就不能立即被執行,那麼調用這個方法的線程被堵塞,一直到該方法可以被成功執行

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

這類集合也包括添加和移除資料的方法,如果不能立即被執行,則傳回null或者抛出異常,但是調用這個方法的線程不會被堵塞。

非堵塞式清單:ConcurrentLinkedDeque

堵塞式清單:LinkedBlockingDeque

按優先級排序清單元素的堵塞式清單:PriorityBlockingQueue

帶有延遲清單元素的堵塞式清單:DeplayQueue

非堵塞式可周遊映射對應的實作類:ConcurrentSkipListMap

随機數字對應的實作類:ThreadLocalRandom

原子變量對應的實作類:AtomicLong 和 AtomicIntegerArray

本文如有任何問題,請留言指教,以免誤導他人