Queue队列遵循了先进先出的原则
BlockingQueue继承了Queue
可以通过IDEA的UML图看出彼此的关系:
BlockingQueue :阻塞队列
向队列尾添加元素(put()方法)时,若队列已经塞满,则当前线程会被阻塞,直到队列中元素被消费,出现空余位置,则线程继续工作
向队列头取元素(take()方法)时,若队列为空,则当前线程会被阻塞,直到队列中出现新的元素,当前线程才会继续工作。
测试:
创建测试类:Test
创建Test私有属性 BlockingQueue
构造方法创建实例:
生产数据:
public void generate() throws InterruptedException { int i = 0; while (true) { i