package com.hhr.cn.tread;
public class ThreadDemo3 {
public static void main(String[] args) {
SellCard windows1=new SellCard();
SellCard windows2=new SellCard();
SellCard windows3=new SellCard();
SellCard windows4=new SellCard();
windows1.setName("windows1");
windows2.setName("windows2");
windows3.setName("windows3");
windows4.setName("windows4");
windows1.start();
windows2.start();
windows3.start();
windows4.start();
}
}
package com.hhr.cn.tread;
//模拟火车张卖票,,,四个窗口同时卖
public class SellCard extends Thread{
private static int cards=20;
@Override
public void run() {
while(true){
try {
Thread.sleep(1000);
synchronized (SellCard.class) {//确保不同线程共享的数据(对象)是一样的
if(cards>0){
cards--;
System.out.println(this.getName()+"卖票,还剩下"+cards+"张票!!");
}else{
System.out.println("票已经卖完");
return;
}
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}