package test;
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
public class Main{
public static void main(String args[ ]){
String s1="售票口1";
String s2="售票口2";
String s3="售票口3";
Boxoffice office=new Boxoffice(s1,s2,s3);
Thread a=new Thread(office);
Thread b=new Thread(office);
Thread c=new Thread(office);
a.setName(s1);
b.setName(s2);
c.setName(s3);
a.start();
b.start();
c.start();
}
}
class Boxoffice implements Runnable{
String name1,name2,name3;
int total=10;
Boxoffice(String s1,String s2,String s3){
this.name1=s1;
this.name2=s2;
this.name3=s3;
}
public void run(){
while(total>1){
sellTicket();
try {
Thread.sleep(300);
} catch (InterruptedException e) {
}
}
}
synchronized void sellTicket(){
if(Thread.currentThread().getName().equals(name1))
{
total--;
System.out.println(name1+"卖掉了一张"+"还剩下"+total+"张");
}
else if(Thread.currentThread().getName().equals(name2))
{
total--;
System.out.println(name2+"卖掉了一张"+"还剩下"+total+"张");
}
else if(Thread.currentThread().getName().equals(name3))
{
total--;
System.out.println(name3+"卖掉了一张"+"还剩下"+total+"张");
}
}
}
还要看看这个的
多线程购票