线程的应用,在后台搜索目录

当应用程序需要在后台运行一个很大的进程,同时保持其用户界面处于激活和可用状态时,就应产生新线程。

下例在后台搜索文件时就用到了一个线程:

 private void cmdMultiSearch_Click(object sender, EventArgs e)
        ...{
            //这里使用线程是为了让Windows在用户界面和进行搜索线程之间来回切换着执行流。
            //这样处理器有一个时间片来更新用户界面,以反映列表框中的变化。
            Thread t = new Thread(new ThreadStart(Search));
            t.Start(); 

        }
 
public void Search()
        ...{
            search = textBox1.Text;
            listBox1.Items.Clear();
            fileCount = 0;
            SearchDirectory(@"C:Program Files");//搜索目录
           
        }

 public void SearchDirectory(string Path)
        ...{
              //Search the directory
            DirectoryInfo di = new DirectoryInfo(Path);
            FileInfo[] f = di.GetFiles(search);//获取当前目录的所有文件
            listBox1.BeginUpdate();
            foreach (FileInfo myFile in f) //遍历目录里的所有文件
                listBox1.Items.Add(myFile.FullName);
            listBox1.EndUpdate();

            //Search its sub directores
            DirectoryInfo[] d = di.GetDirectories();//获取当前目录的子目录
            foreach (DirectoryInfo myDir in d) //遍历所有子目录
                SearchDirectory(myDir.FullName);

        }

时间: 2024-08-31 09:40:08

线程的应用,在后台搜索目录的相关文章

用VB函数Dir实现递归搜索目录

递归|函数 用VB函数Dir实现递归搜索目录     我在很久以前就实现了这个方法了.它没有采用任何的控件形式.也没有调用系统API函数FindFirst,FindNext进行递归调用,和别人有点不同的就是我用的是VB中的Dir()函数.事实上,直接采用Dir()函数是不能进行自身的递归的调用的,但我们可以采用一种办法把Dir将当前搜索目录的子目录给保存下来,然后在自身的search(strPathName)递归函数中依次进行递归的调用,这样就可以把指定的目录搜索完毕.     具体代码如下:

在C#中搜索目录下的所有文件,并且删除所有开头为空白的行的空白

问题描述 在C#中搜索目录下的所有文件,并且删除所有开头为空白的行的空白 在C#中搜索目录下的所有文件,并且删除所有开头为空白的行的空白,如果全是空白,删除整行,怎么做? 解决方案 这个问题回答过? File.WriteAllLines(文件名, File.ReadAllLines(文件名).Where(x => x.Trim()).Where(x => x != "")); 解决方案二: 删除空白的代码行rm删除破折号开头的文件或目录

JS动态创建<select>(无runat=“server”),后台搜索数据库绑定select。代码应该怎么写,新手,不会AJAX,AJSON

问题描述 实现JS创建一个<select>,没有runat="server"属性,然后option是根据后台搜索数据库出来的数据绑定生成,请问大神们怎么实现,新手不会AJAX,AJSON.求代码啊. 解决方案 解决方案二:既然你提到了Ajax,那么我就认为你是要动态的来加载下拉框的选项,这样的话,后台取数据,将数据返回前台,前台进行[绑定]解决方案三:新手就需要买书然后认真学习.等你能设计程序了,再问.解决方案四:新手就需要买书然后认真学习.等你能设计程序了,基本够一个程序

UNIX系统管理:链接程序搜索目录

上一节我们提到,当待于程序链接的库文件不在系统的标准位置时,需要在cc命令行中加上-L选项以指定非标准的库文件所在的目录.链接程序将首先在-L选项指定的各目录中搜索-l选项指定的库文件.在查找这些库文件时链接程序,首先看有没有指定库的动态版本,有的话则进行动态链接:否则它将用指定库的静态版本进行静态链接. 另外,前面还介绍过-dn选项,该选项使得链接程序取消缺省的动态链接方式而用静态链接.现在自然而然地产生一个问题:如何让链接程序对某些库进行静态链接而对另外一些库使用动态链接? 解决这个问题的第

请问在win8下搜索目录文件内容有什么好工具

问题描述 我想找一个在Win8下,类似于SearchReplace的工具:1.在任何文件夹中,点击左键,即可搜索文件夹目录下所有文件的内容:2.搜索到包括关键词的文件后,结果列出包括关键词的文件:3.点击文件可以打开编辑:另外要求:1.软件要小而快:2.软件不要去创建本地文件索引,希望直接遍历查找:3.最好是开源免费的,谢谢! 解决方案 内容的话 就 TotalCommander上吧解决方案二:TextCrawler不错,http://www.onlinedown.net/soft/88469.

UNIX系统管理:动态链接程序程序搜索目录

在采用动态链接方式对程序进行编译,链接时候.链接程序只是在最终的可执行文件中记录下关于所引用的共享库中的符号的一些登记信息,以便在程序被执行时,动态链接程序能够根据这些登记信息找到相应的代码.因此登记动态链接方式而言,除了在链接阶段涉及到对库文件的搜索路径外,还有一个在程序运行阶段对库文件的搜索问题. 前一个问题我们知道借助于LD_LIBRARY_PATH环境变量及cc命令行中的-L选项已经得到了比较好的解决.对于第二个问题,我们必须提供一种机制,使得动态链接程序能够找到相应的动态库,然后才能将

Search File Contents PHP 搜索目录文本内容的代码_php技巧

这个类可以用来搜索在给定的文本目录中的文件. 它可以给定目录遍历递归查找某些文件扩展名的文件. 并打开找到的文件,并检查他们是否包含搜索词语. 它返回一个含有所有文件的列表包含搜索词语数组. 复制代码 代码如下: <?php /* Class for searching the contents of all the files in a directory and its subdirectories For support please visit http://www.webdigity.

Matlab中添加搜索目录

一.问题来源 来自于一份大规模hash图像检索代码. 二.问题解析   2.1 添加目录 addpath('./utils/');  2.2 添加目录及其子目录 addpath(genpath('./utils/.');  

LFCS 系列第三讲:归档/压缩文件及目录、设置文件属性和搜索文件

LFCS 系列第三讲:归档/压缩文件及目录.设置文件属性和搜索文件 最近,Linux 基金会发起了一个全新的 LFCS(Linux 基金会认证系统管理员Linux Foundation Certified Sysadmin)认证,旨在让遍布全世界的人都有机会参加该认证的考试,通过考试的人将表明他们有能力在 Linux 上执行基本的中级系统管理任务.这项认证包括了对已运行的系统和服务的支持.一流水平的问题解决和分析以及决定何时将问题反映给工程师团队的能力. LFCS 系列第三讲 请看以下视频,这里