-
链表
链表包含两个属性、数据本身以及指向下一个节点的引用或者指针 -
BlockingQueue(阻塞队列),对元素数量存在界限、当队列已经满的时候、对队列进行写入的线程将被阻塞挂起、如果数据为空的时候、也被阻塞挂起,BlockingQueue 内部以来显示锁和Condition,所以此队列为线程安全的。
1:ArrayBllockingQueue--基于数组实现的FIFO阻塞队列,在构造的时候,需要指定最大的元素数量, 阻塞式写方法 put() offer() 非阻塞式写方法 add() offer() 阻塞式读方法 take() poll() 非阻塞式读方法 poll() peek() 2:PriorityQueue --排序且无边界的队列,无边界即无阻塞 3:LinkedBlockingDeque 基于数组实现的FIFO有边界的队列 4:SynchronousQueue 写入数据必须等待其他线程对数据的相应移除 5:LinkedBlockingDeque 基于链表实现的双向阻塞队列 6:LinkedTransferQueue 在以上的队列中、为了保持数据的一致性、需要对共享数据进行Lock()操作、synchronized ()操作
-
ConcurrentQueue 并发队列,
JAVA高并发之并发容器
最新推荐文章于 2023-02-24 16:45:48 发布