有一辆班车除司机外只能承载70个人,假设前后两个车门都能上车,如果坐满则不能再上车。请用线程模拟上车过程并且在控制台打印出是从哪个车门上车以及剩下的座位数。比如:
(从前门上车---还剩N个座位)
public class ClassTwo implements Runnable{
static int number=70;
public static void main(String[] args) {
ClassTwo classTwo=new ClassTwo();
Thread t1=new Thread(classTwo,"前门上车");
Thread t2=new Thread(classTwo,"后门上车");
t1.start();
t2.start();
}
@Override
public void run() {
while (number>0) {
synchronized (this) {
if (number==0) {
System.out.println("已经没有座位了");
break;
}else {
System.out.println("从"+Thread.currentThread().getName()+"----还剩"+--number+"个座位");
}
}
}
}
}
|
|