zoukankan      html  css  js  c++  java
  • java多线程实例(2)

    public class ThreadDemo05 {
        public static void main(String args[])
        {
            // 四个售票点应该控制同一个资源
            Demo d = new Demo() ;
    
            Thread t1 = new Thread(d) ;
            Thread t2 = new Thread(d) ;
            Thread t3 = new Thread(d) ;
            Thread t4 = new Thread(d) ;
            
            t1.start() ;
            t2.start() ;
            t3.start() ;
            t4.start() ;
    
        }
    
    }
    
    class Demo implements Runnable
    {
        private int ticket = 50 ;
        Object obj = new Object();//申请一个对象
    
        public void run()
        {
            while(this.ticket>0)
            {
                synchronized(obj)
                {
                    if(this.ticket > 0)
                    {
                        exe(Thread.currentThread().getName());
                    }    
                }
            }
        }
        
        public void exe(String name){
            try {
                Thread.sleep(40);
                System.out.println( name + " sail --" + ticket--);
                System.out.println( name);
                System.out.println( name);
            } catch (Exception e) {
                System.out.println("异常");
            }
        }
    };
  • 相关阅读:
    multi-task learning
    代码杂谈-python函数
    代码杂谈-or符号
    安装maven
    zsh
    mint linux的几个问题
    [软件] Omnigraffle
    无梯度优化算法
    根据pdf文件获取标题等信息
    计算广告-GD广告
  • 原文地址:https://www.cnblogs.com/lixin890808/p/5256127.html
Copyright © 2011-2022 走看看