zoukankan      html  css  js  c++  java
  • 练习6

    package zuoYe04;
    
    public class BuyTicket implements Runnable {
    
        // 总票数
        private static int count = 10;
    
        // 抢票数
        private static int buy = 0;
    
    //    static Object obj = new Object();
        @Override
        public void run() {
            // TODO Auto-generated method stub
            while (true) {
    
                synchronized (this) {
    
                    if (count > 0) {
    
                        try {
                            Thread.sleep(50);
                        } catch (InterruptedException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                        System.out
                                .println(Thread.currentThread().getName() + "抢到第" + (++buy) + "票,还剩余:" + (--count) + "张票");
    
                        if("黄牛党".equals(Thread.currentThread().getName())) {
                            
                            return;
                        }
                    } else {
    
                        System.out.println("抢票结束!");
                        return;
                    }
    
                }
    
            }
        }
    
    }
    package zuoYe04;
    
    public class Test {
    
        public static void main(String[] args) {
            
            BuyTicket b = new BuyTicket();
            Thread t1 = new Thread(b,"桃跑跑");
            Thread t2 = new Thread(b,"张票票");
            Thread t3 = new Thread(b,"黄牛党");
            t1.start();
            t2.start();
            t3.start();
        }
    }

  • 相关阅读:
    常用模块Part(1)
    递归函数
    python 生成器函数
    python 迭代器与生成器
    python 函数进阶
    python 装饰器进阶
    python time模块
    python 初始函数
    python 文件操作
    python 一些小知识
  • 原文地址:https://www.cnblogs.com/bichen-01/p/11313898.html
Copyright © 2011-2022 走看看