import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
public class ThreadTicket {
public static void main(String[] args) {
Booking b1 = new Booking("军人售票口");
Booking b2 = new Booking("学生售票口");
Booking b3 = new Booking("老年人售票口");
Booking b4 = new Booking("网上售票口");
b1.start();
b2.start();
b3.start();
b4.start();
}
}
/*
* 多窗口卖票系统。多线程
* 票数为静态的,共享数据
* synchronized(对象){}代码块中的内容是加锁的,
* 即当一个线程在使用时,其他线程不可以进入。
* 使得共享资源数据的安全。
*/
class Booking extends Thread{
public Booking(String name){
super(name);
}
static int ticket = 50;//票数共50张
Lock lock = new ReentrantLock();//明锁
/*
*