并行forEach搜索文件

迪克斯

我有一个包含2个列表框的程序,该程序被低音搜索到文件,然后与StopWatch使用AsyncAwait和TPL的区别进行比较...第一个列表框使用以下功能AsyncAwait(我不知道这是否是更好的方法)可以,但是可以,请参见下面的代码)

private async void button1_Click(object sender, EventArgs e)
{
    Stopwatch stopWatch = new Stopwatch();
    foreach (string d in Directory.GetDirectories(@"C:\Visual Studio Projectes\Hash\AsyncAwait\Carpetes"))
    {    
        foreach (string s in Directory.GetFiles(d))
        {
            stopWatch.Start();
            listBox1.Items.Add(s);
            await Task.Delay(1);
            btIniciar1.Enabled = false;
        }
    }
    btIniciar1.Enabled = true;
    stopWatch.Stop();
    TimeSpan ts = stopWatch.Elapsed;
    textBox1.Text = ts.ToString("mm\\:ss\\.ff") + (" minuts");
}

然后在我的第二个列表框中,我陷入了困境,我不知道如何实现Parallel.ForEach行为async,有什么更好的方法呢?在这种情况下,我找不到使用TPL的方法来完成与我的第一个列表框相同的操作,请您能帮我吗?

迪克斯

最后,我已经解决了这个问题:

 DirectoryInfo nodeDir = new DirectoryInfo(@"c:\files");
 Parallel.ForEach(nodeDir.GetDirectories(), async dir =>
 {
    foreach (string s in Directory.GetFiles(dir.FullName))
    {
       Invoke(new MethodInvoker(delegate { lbxParallel.Items.Add(s); }));
       contador++;
      await Task.Delay(1);
    }
 }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PowerShell ForEach-正在使用的并行文件

来自分类Dev

并行搜索不同的值?

来自分类Dev

在处理文件系统(Windows)时,为什么串行foreach操作比并行foreach操作要慢?

来自分类Dev

R:Foreach并行化

来自分类Dev

并行ForEach丢失数据

来自分类Dev

EventHub ForEach 并行异步

来自分类Dev

使用Multithreading或Parallel.ForEach加速搜索文件

来自分类Dev

如何使用foreach-object并行将日志写入单个文件?

来自分类Dev

Spark上的并行参数搜索

来自分类Dev

并行Autofac DI.foreach

来自分类Dev

“无限”异步并行foreach循环

来自分类Dev

C#并行Foreach +异步

来自分类Dev

并行Foreach引发ApartmentState异常

来自分类Dev

Foreach 循环中的并行处理

来自分类Dev

dopar foreach(运行并行 for 循环)

来自分类Dev

并行文件下载

来自分类Dev

XML文件的并行处理

来自分类Dev

并行文件下载

来自分类Dev

并行处理文件

来自分类Dev

并行分析文件的循环

来自分类Dev

App Engine搜索:如何并行搜索多个搜索索引?

来自分类Dev

GNU并行:按ID并行文件

来自分类Dev

搜索文件

来自分类Dev

用于并行搜索的Elasticsearch中的EsRejectedExecutionException

来自分类Dev

使用dispatch_async并行搜索

来自分类Dev

排序和搜索并行数组?

来自分类Dev

字符串搜索-并行版本较慢

来自分类Dev

使用 GNU 并行增强 grep 搜索

来自分类Dev

在txt文件html / php / ajax中搜索“ input”值时发生多次爆炸和foreach