这里有三个概念,生产者,消费者,仓库
public class Repository {
private int capability;//仓库容量
private boolean stoped=false;//生产者线程是否退出的标志,如果生产者线程退出,则消费者线程消费完所以商品后也退出,而不是等待
private List<String> list=new ArrayList<>();
public Repository(int capability){
this.capability=capability;
}
public synchronized void add(String product) throws InterruptedException {
list.add(product);
}
public synchronized String remove() throws InterruptedException {
return list.remove(0);
}
public boolean isFull(){
return list.size()==capability;
}
public boolean isEmpty(){
return list.size()==0;
}
public void stop(){
stoped=true;
}
public boolean isStoped(){
return stoped;
}
}
public class Productor extends Thread {