A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

/*某停车场共有100个车位 ,编号 1-100;开启两个线程模拟两个入口,每个入口一次驶入一辆车
* 需要耗时100ms;每驶入一辆车控制台打印出停靠的车位号,知道停车场停满车为止:
* 耗时:7分48秒
* */
public class 停车场 {
   public static void main(String[] args) {
         Port p1 = new Port();
         Port p2 = new Port();
         p1.setName("入口一");
         p2.setName("入口二");
         p1.start();
         p2.start();
       
         
}
}
class Port extends Thread{
        private static int num=100;
        public void run(){
                int count=1;
                while(true){
                        synchronized(Port.class){
                                if(num<=0){
                                        break;
                                }
                                try {
                                        Thread.sleep(100);
                                } catch (InterruptedException e) {
                                        // TODO Auto-generated catch block
                                        e.printStackTrace();
                                }
                                System.out.println(Thread.currentThread().getName()+",驶入第"+count+"车");
                                num--;
                                count++;
                        }
                }
                System.out.println("没有位置了");
                count--;
                System.out.println(Thread.currentThread().getName()+"输入共"+count+"辆车");
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马