编写多线程程序,模拟多个人通过一个山洞。这个山洞每次只能通过一个人,每个人通过山洞的时间为2秒(sleep)。随机生成10个人,都要通过此山洞,用随机值对应的字符串表示人名,打印输出每次通过山洞的人名

来源:互联网 发布:免费的微信多开软件 编辑:程序博客网 时间:2024/06/10 01:08
package org.gerrysu;    import java.util.Random;    public class shandong implements Runnable{      private Object lock=new Object();          public void run(){              synchronized(lock){                  System.out.println(Thread.currentThread().getName()+"通过");                  try{                      Thread.sleep(2000);                  }catch(InterruptedException e){                      e.printStackTrace();                  }              }          }           public static void main(String[] args) {          shandong sd = new shandong();            for(int j=0;j<10;j++)          {          String rs;             String base = "abcdefghijklmnopqrstuvwxyz0123456789";                   Random random = new Random();                   StringBuffer sb = new StringBuffer();                   for (int i = 0; i < 5; i++) {                       int number = random.nextInt(base.length());                       sb.append(base.charAt(number));        //获得随机字符串              }                   rs = sb.toString();                new Thread(sd,rs).start();      }        }     }     

阅读全文
0 0
原创粉丝点击