ArrayBlockingQueue
基于数组的有界阻塞队列,按 FIFO(先入先出)排序。新任务进来,会放到该队列的队尾。 有界的数组可以防止资源耗尽问题。
LinkedBlockingQueue
基于链表的无界阻塞队列(其实最大容量为 Integer.MAX = 2147483647) ,按照 FIFO 排序。
SynchronousQueue
一个不缓存任务的阻塞队列,生产者放入一个任务必须等到消费者取出这个任务。
PriorityBlockingQueue
具有优先级的无界阻塞队列,优先级通过参数 Comparator 实现