要求输出结果为:生产者:生产者生产商品0消费者:消费者消费商品0生产者:生产者生产商品1消费者:消费者消费商品1生产者:生产者生产商品2消费者:消费者消费商品2生产者:生产者生产商品3消...
要求输出结果为:
生产者:生产者生产商品0
消费者:消费者消费商品0
生产者:生产者生产商品1
消费者:消费者消费商品1
生产者:生产者生产商品2
消费者:消费者消费商品2
生产者:生产者生产商品3
消费者:消费者消费商品3
生产者:生产者生产商品4
消费者:消费者消费商品4
生产者:生产者生产商品5
消费者:消费者消费商品5
每条输出相隔一秒,怎么修改以下代码或者重编一个??
public class shopping {
public static void main(String args[]){
String a="生产者";
String b="消费者";
change c=new change(a,b);
Thread scz=new Thread(c);
Thread xfz=new Thread(c);
scz.setName(a);
xfz.setName(b);
scz.start();
xfz.start();
}
}
class change implements Runnable{
String sc,xf;
int count;
public change(String a,String b){
sc=a;
xf=b;
count=0;
}
public void run() {
changenumber();
}
public synchronized void changenumber(){
if(Thread.currentThread().getName().equals(sc)){
System.out.println(Thread.currentThread().getName()+":生产者生产商品"+count);
try{
Thread.sleep(1000);
}catch (Exception e) {
// TODO: handle exception
}
}
else if(Thread.currentThread().getName().equals(xf)){
System.out.println(Thread.currentThread().getName()+":消费者消费商品"+count);
try{
Thread.sleep(1000);
}catch (Exception e) {
// TODO: handle exception
}
}
}
}
展开