zoukankan      html  css  js  c++  java
  • 有感于滥用多线程之遍历文件目录信息

    今天这篇博文,完全是有感而发,不仅仅是经常看到有人求文件夹遍历的代码,主要是,看到有些人写了一些多线程读取的方法,贴到网上供人参考使用,然后真有不少人特意求这种多线程遍历文件目录的方法。看到这个现象,我很无奈。。。真的。

    为什么这么说,因为了解传统硬盘工作原理的人,稍微想想,就应该明白,读取某个文件夹下的所有目录信息,单线程比多线程更有优势。

    也就是说,多线程遍历文件夹目录信息,根本就是个噱头,毫无实用价值,只会误导初学者。

    顺便也查阅了一些关于固态硬盘的资料,基本可以肯定,即使是在固态硬盘上遍历目录信息,多线程也是没有什么意义的。

    希望更多人能看到这篇文章,同时也希望更多程序员们,有空也看看硬件原理方面的书,从而写出更多真正优秀高效的代码。

    如果我的观点有不对的地方,也请大家提出并讨论指正!


            /// <summary>
            /// 遍历文件夹及所含文件的递归方法
            /// </summary>
            /// <param name="list">遍历结果集</param>
            /// <param name="path">遍历的目录</param>
            public static void GetAllFiles(List<PathInfo> list, string path)
            {
                //获取目录下的所有的文件的全名
                string[] files = Directory.GetFiles(path);
                foreach (var f in files)
                {//遍历该目录下所有文件
                    FileInfo fi = new FileInfo(f);
                    // ... Do something,You know! ...
                }
                //获取目录下的所有的子文件夹全名
                string[] dir = Directory.GetDirectories(path);
                foreach (var d in dir)
                {//遍历该目录下所有文件夹
                    // ... Do something,You know! ...
                    GetAllFiles(list, d);
                }
            }  
    


  • 相关阅读:
    内存条DDR3与DDR3L的区别
    松耦合,紧耦合
    绕单轴的旋转矩阵
    IMU
    墨卡托投影、横轴墨卡托投影和通用横轴墨卡托投影
    大地基准面
    我国的大地原点
    《诗经》
    自增长主键Id的设计
    REDIS 主从复制
  • 原文地址:https://www.cnblogs.com/foren/p/6009102.html
Copyright © 2011-2022 走看看