多线程练手,模拟买票
/**
*
*/
public class ThreadTest2 {
public static void main(String[] args) {
Ticket ticket=new Ticket();
for(int i=0;i<3;i++){
new Thread(ticket).start();
}
}
}
class Ticket implements Runnable{
private int count=50;
public synchronized int dec(){
if(count>0){
--count;
System.out.println(Thread.currentThread().getName()+"余票:"+count);
}
return count;
}
@Override
public void run() {
// TODO Auto-generated method stub
while(true){
try {
Thread.sleep(500);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(this.dec()==0){
System.out.println("无票");
return;
}
}
}
}