1. 阻塞队列简介
阻塞队列(BlockingQueue) 是 Java 中用于多线程环境的一种线程安全队列,它在添加或获取元素时可以阻塞线程,直到队列状态满足操作条件。
- 如果队列为空,获取元素的操作会阻塞线程,直到有新元素可用。
- 如果队列已满,添加元素的操作会阻塞线程,直到队列有空余空间。
阻塞队列广泛用于生产者-消费者模型,常见实现有:
- ArrayBlockingQueue:基于数组的有界阻塞队列。
- LinkedBlockingQueue:基于链表的有界阻塞队列。
- PriorityBlockingQueue:带优先级的阻塞队列。
- DelayQueue:延迟队列,支持定时任务。
