内联后台工作者

0 c# backgroundworker

在 C# 中,我有两个代码块,它们打开并写入我打开的进程,我希望它们在同一个函数中同时运行。我找到了具有匿名方法的 BackgroundWorker?但是当我试图实现它时,它不会在 lambda 表达式中运行代码。

BackgroundWorker bgwanalysis = new BackgroundWorker();
bgwanalysis.DoWork += delegate
{
 ...codehere..
};

while (bgwanalysis.IsBusy)
{
  Thread.Sleep(2000);
}
Run Code Online (Sandbox Code Playgroud)

我知道我错过了一些基本的东西,有人可以帮我补充吗?谢谢

Ste*_*ner 5

从你所展示的,我没有看到这条线:

bgwanalysis.RunWorkerAsync();
Run Code Online (Sandbox Code Playgroud)

所以你的代码变成:

BackgroundWorker bgwanalysis = new BackgroundWorker();
bgwanalysis.DoWork += delegate
{
 ...codehere..
};

bgwanalysis.RunWorkerAsync();

while (bgwanalysis.IsBusy)
{
  Thread.Sleep(2000);
}
Run Code Online (Sandbox Code Playgroud)