gpt4 book ai didi

c# - BackgroundWorker 是否有可能等待另一个?

转载 作者:行者123 更新时间:2023-11-30 22:30:09 25 4
gpt4 key购买 nike

foreach (string file in listToConvert)
{
BackgroundWorker backgroundWorker = new BackgroundWorker();
backgroundWorker.WorkerReportsProgress = true;
backgroundWorker.DoWork += new DoWorkEventHandler(
(s3, e3) =>
{
newFile = sendFilesToConvert(file);
});

backgroundWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(
(s3, e3) =>
{
listBoxFiles.Items.Add(newFile);
});

backgroundWorker.RunWorkerAsync();
}

列表中的每个文件都将转换为另一个文件,我希望每个 BackgroundWorker 都会等到它完成转换,然后下一个 BackgroundWorker 才会启动我该怎么做?

最佳答案

不要在每次循环运行时都创建 Bgw。无论如何,这不是一个好主意。

只需在单个 Bgw 中运行 foreach()

您可以使用进度事件将结果添加到列表框或将它们收集在列表中并在完成后一次添加它们。

关于c# - BackgroundWorker 是否有可能等待另一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9825300/

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