gpt4 book ai didi

时间:2019-03-17 标签:c#.nettasks/threadingconsoleapplication

转载 作者:行者123 更新时间:2023-12-03 03:07:00 25 4
gpt4 key购买 nike

我有一个可以移动文件的控制台应用程序。它最初将文件移动了一个。然后我开始探索多线程以便一次移动所有文件。我发现我必须在每个 foreach 循环之后调用 console.read() 才能保持任务运行。如果没有这个,应用程序将关闭。通过这种方法,应用程序即使完成后仍保持打开状态。有人对如何解决这个问题有任何建议吗?

        foreach (string file in files)
{

Task.Factory.StartNew(() => { MoveFiles(file, str); });

}

Console.Read();

最佳答案

使用Paralell.Foreach而不是foreach。这是一个阻塞调用。

Parallel.ForEach(files, file =>
{
MoveFiles(file, str);
});

顺便说一句:这比一次启动 N 个任务(假设有 10K 个文件)然后等待完成所有任务(通过Task.WaitAll)

关于时间:2019-03-17 标签:c#.nettasks/threadingconsoleapplication,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40812433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com