并發集合
- 并發集合
-
- 堵塞式集合(Blocking Collection)
- 非堵塞式集合(Non-Blocking Collection)
并發集合
Java程式提供了一些可以用于并發程式中的資料集合,他們不會引起任何問題。一般來說,Java提供兩類适用于并發應用的集合
堵塞式集合(Blocking Collection)
這類集合包括添加和移除資料的方法。當集合已滿或者為空的時候,被調用的添加或者移除方法就不能立即被執行,那麼調用這個方法的線程被堵塞,一直到該方法可以被成功執行
非堵塞式集合(Non-Blocking Collection)
這類集合也包括添加和移除資料的方法,如果不能立即被執行,則傳回null或者抛出異常,但是調用這個方法的線程不會被堵塞。
非堵塞式清單:ConcurrentLinkedDeque
堵塞式清單:LinkedBlockingDeque
按優先級排序清單元素的堵塞式清單:PriorityBlockingQueue
帶有延遲清單元素的堵塞式清單:DeplayQueue
非堵塞式可周遊映射對應的實作類:ConcurrentSkipListMap
随機數字對應的實作類:ThreadLocalRandom
原子變量對應的實作類:AtomicLong 和 AtomicIntegerArray
本文如有任何問題,請留言指教,以免誤導他人