您的位置:首页 > 其它

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

2017-12-09 20:21 1916 查看
class Cave implements Runnable{
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 class Example {
public static void main(String[] args) {
Cave cave =new Cave();//创建对象
for(int i=0;i<10;i++)
new Thread(cave,"lucy"+(int)((Math.random()*100))).start();

}

}

显示结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐