在java基础中生产者和消费者的案例是不可避免的一个经典问题
要想实现这个经典的案例我们要先了解实现它需要一些什么东西
1.容器:用于存放生产者生产的产品,消费者从中消费商品
2.生产者:不断生产商品,直到容器满了,停止生产。
3.消费者:不断消耗商品,直至容量里的商品为空,停止消费。
4锁:生产者和消费者向容器里添加和删除元素的时候可以同步进行
我们来看实现代码
package P_and_C;
/**
* Created by Lei on 2020/11/3 9:39
*/
import java.util.LinkedList;
import java.util.Queue;
public class ProducerConsumerAppMain {
//定义一个最大值和一个最小值当生产者达到最大值的时候线程等待
//定义一个最小值当消费者达到最小值的时候线程等待
private final int MAX_LEN=6;
private final int MIN_SIZE=0;
private Queue<Integer> queue = new LinkedList<Integer>();
//定义内部类Producer继承Thread
class Producer extends Thread{
//实现run方法
@Override
public void run(){
//调用produce方法
produce()