我有一个包含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");
}
Run Code Online (Sandbox Code Playgroud)
然后在我的第二个列表框在那里我坚持,我不知道如何实现Parallel.ForEach对像async,有什么更好的方式来做到这一点?在这种情况下我找不到使用TPL的方法和我的第一个列表框一样,你能帮帮我吗?