public class SaleTicketMutiThread implements Runnable {
int tickets = 10;
@Override
public void run() {
if (tickets > 0) {
sale();
}else{
System.out.println(Thread.currentThread().getName() + "卖光了");
}
}
public synchronized void sale() {
if (tickets > 0) {
System.out.println(Thread.currentThread().getName() + "卖第"
+ (10 - tickets + 1) + "张票");
tickets--;
}
}
/**
* @param args
*/
public static void main(String[] args) {
SaleTicketMutiThread st = new SaleTicketMutiThread();
new Thread(st, "一号窗口").start();
new Thread(st, "二号窗口").start();
new Thread(st, "三号窗口").start();
new Thread(st, "四号窗口").start();
new Thread(st, "一号窗口").start();
new Thread(st, "二号窗口").start();
new Thread(st, "三号窗口").start();
new Thread(st, "四号窗口").start();
new Thread(st, "一号窗口").start();
new Thread(st, "二号窗口").start();
new Thread(st, "三号窗口").start();
new Thread(st, "四号窗口").start();
new Thread(st, "一号窗口").start();
new Thread(st, "二号窗口").start();
}
}
int tickets = 10;
@Override
public void run() {
if (tickets > 0) {
sale();
}else{
System.out.println(Thread.currentThread().getName() + "卖光了");
}
}
public synchronized void sale() {
if (tickets > 0) {
System.out.println(Thread.currentThread().getName() + "卖第"
+ (10 - tickets + 1) + "张票");
tickets--;
}
}
/**
* @param args
*/
public static void main(String[] args) {
SaleTicketMutiThread st = new SaleTicketMutiThread();
new Thread(st, "一号窗口").start();
new Thread(st, "二号窗口").start();
new Thread(st, "三号窗口").start();
new Thread(st, "四号窗口").start();
new Thread(st, "一号窗口").start();
new Thread(st, "二号窗口").start();
new Thread(st, "三号窗口").start();
new Thread(st, "四号窗口").start();
new Thread(st, "一号窗口").start();
new Thread(st, "二号窗口").start();
new Thread(st, "三号窗口").start();
new Thread(st, "四号窗口").start();
new Thread(st, "一号窗口").start();
new Thread(st, "二号窗口").start();
}
}