其他分享
首页 > 其他分享> > CodeGo.net>如何使用生产者/消费者队列递归搜索文件夹和文件?

CodeGo.net>如何使用生产者/消费者队列递归搜索文件夹和文件?

作者:互联网

我想先搜索目录,然后在其中的文件中搜索关键字.

我知道我需要两个类,生产者类和消费者类,但我不知道如何通过C#生产者/消费者队列进行搜索?

public class Program
{
    private static void Main()
    {
        Queue<File> searchFile = new Queue<File>();
        Queue<Directory> searchDirectory = new Queue<Directory>();

        new Thread(searchDirectory).Start();

        for (int i = 0; i < 3; i++)
            new Thread(searchFile).Start();
    }
}

解决方法:

最初的问题:

>您要声明2个变量
使用相同的不同类型
具有相同作用域的变量名.
>您不想启动线程
搜索目录和另一个
一个在文件上.

项目编号2的问题在于,您正在解决具有多个线程的最大瓶颈之一,即磁盘IO.通过实施多个工作线程来执行磁盘IO(在标准HDD设备上),您将一无所获.

详细说明您要做什么(请举个例子).可能会有更好的过程.

标签:producer-consumer,multithreading,c
来源: https://codeday.me/bug/20191208/2090453.html