你的位置:首页 > 软件开发 > Java > Java 多线程之龟兔赛跑(文件夹——读取文件——时间)

Java 多线程之龟兔赛跑(文件夹——读取文件——时间)

发布时间:2016-01-04 21:00:22
版权声明:本文为博主原创文章,未经博主允许不得转载。 描述:乌龟和兔子(各自是一个Java线程)在我们的电脑上赛跑,我们为它们指定一个跑道(本地文件系统上的一个目录,该目录包含子目录)。跑的规则是读“跑道”上的所有文件。兔子很聪明,只读 ...

 

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

 

描述:

乌龟和兔子(各自是一个Java线程)在我们的电脑上赛跑,我们为它们指定一个跑道(本地文件系统上的一个目录,该目录包含子目录)。跑的规则是读“跑道”上的所有文件。兔子很聪明,只读文件的元信息(路径名、大小、最后修改时间),但每读完一个文件就要睡1秒钟;乌龟很笨,读文件的每一个字节(乌龟每次读取数据的大小不超过1024字节),但是它不停歇地读,直到读完所有文件。写程序模拟它们同时起跑的比赛过程,最后输出“兔子赢!”或“乌龟赢!”

 

 1 import java.io.File; 2  3 /**兔子线程 4  * 路径名 大小 最后修改时间 读完一个文件sleep。。 5  * @author gang 6  * 7 */ 8 public class Rabbit implements Runnable{ 9   File file;10   public Rabbit(){11     file = null;12   }13   public Rabbit(File file){14     this.file = file;15   }16   public void run(){17     read(file);18   }19   20   public void read(File file){21     if(file.isDirectory()){22       for(File files:file.listFiles())23         read(files);24     } else {25       file.getAbsolutePath();26       file.lastModified();27       file.length();28       try {29         Thread.sleep(1000);30       } catch (InterruptedException e) {31         // TODO Auto-generated catch block32         e.printStackTrace();33       }34     }35   }36 }

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:Java 多线程之龟兔赛跑(文件夹——读取文件——时间)

关键词:JAVA

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。