多线程&并发篇---第十篇

系列文章目录


文章目录

  • 系列文章目录
  • 一、Java线程池中队列常用类型有哪些?
  • 二、线程安全需要保证几个基本特征?
  • 三、说一下线程之间是如何通信的?


一、Java线程池中队列常用类型有哪些?

ArrayBlockingQueue 是一个基于数组结构的有界阻塞队列,此队列按 FIFO(先进先出)原则
对元素进行排序。
LinkedBlockingQueue 一个基于链表结构的
阻塞队列
,此队列按FIFO (先进先出) 排序元
素,吞吐量通常要高于 ArrayBlockingQueue 。
SynchronousQueue 一个不存储元素的阻塞队列
PriorityBlockingQueue 一个具有优先级的无限阻塞队列。 PriorityBlockingQueue 也是基于
最小二叉堆实现

DelayQueue
只有当其指定的延迟时间到了,才能够从队列中获取到该元素。
DelayQueue 是一个没有大小限制的队列,
因此往队列中插入数据的操作(生产者)永远不会被阻塞,而只有获取数据的操作(消费
者)才会被阻塞。

你可能感兴趣的:(多线程)