使用线程池实现卖票
1:先写一个Runnable。 1 package ThreadPool; 2 3 /** 4 * @ProjectName: smartdata 5 * @Package: ThreadPool 6 * @ClassName: TicketRunnable 7 * @Author: heluwei 8 * @Description: 9 * @Date: 2020/3/23 18:55 10 * @Version: 1.0 11 */ 12 public class TicketRunnable implements Runnable { 13 14 // 为了保持票数的一致,票数要静态 15 static int tick = 20; 16 // 创建一个静态钥匙 17 static Object ob = "aa";//值是任意的 18 // 重写run方法,实现买票操作 19 @Override 20 public void run() { 21 while (tick > 0) { 22 synchronized (ob) {// 这个很重要,必须使用一个锁, 23 // 进去的人会把钥匙拿在手上,出来后才把钥匙拿让出来 24 if (tick > 0) { 25 System.out.println(Thread.currentThread().getName() +