模型的构建:食堂桌子上面有一个最多放6个馒头的框子,一边师傅在做馒头,一边学生在吃馒头,问:怎样实现JAVA代码的编译。
class VoTou{
int id;
VoTou(int id){
this.id=id;
}
}
class SyncStack{
index=0;
VoTou[] arryVT=new VoTou[6];
}
public void push(VoTou vt){
while(index==arr.length){
try{
this.wait();
catch(InterruptedException e){
e.princstack
}
this.notify();
arrVT[index]=vt;
index++;
}
public VoTou pop(){
while(index==o){
try{
this.wait();
catch(InterruptedException e){
e.princstack
}
this.notify();
index--;
return arrVT[index];
}
}
class Productor implements Runnable{
SyncStack ss=null;
Productor(SyncStack){
this.ss=ss;
public void run(){
for(int i=0;i<20;i++){
VoTou vt=new VoTou[i];
ss.push(vt);
}
class Consumer implements Runnable{
SyncStack ss=null;
Consumer(SyncStack){
this.ss=ss;
public void run(){
for(int i=0;i<20;i++){
VoTou vt=ss.pop();
ss.push(vt);
}
}
public class ProductorConsumer{
public static void main(String[] args){
SyncStack ss=new SyncStack();
Productor p=new Productor(ss);
Consumer c=new Consumer(ss);
newThread(p).start();
newThread(c).start();
}
}
以上代码就是完整的内容,记得点赞哦!