我有两个后台线程
Worker = new BackgroundWorker();
Worker.DoWork += new DoWorkEventHandler(GetQuery);
Worker.RunWorkerCompleted += GetQuery_RunWorkerCompleted;
Worker.RunWorkerAsync();
Worker2012 = new BackgroundWorker();
Worker2012.DoWork += new DoWorkEventHandler(GetQuery2012);
Worker2012.RunWorkerCompleted += GetQuery2012_RunWorkerCompleted;
Worker2012.RunWorkerAsync();
工作线程中的两个方法都返回数据表
现在我的任务是我需要将这两个数据表合并为一个
出于这个原因,我在第一个任务的 RunCompletion 中执行此操作
void GetQuerys_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
do{} while(Worker2012.IsBusy);
//Merge Datatables
}
但由于某种原因,do while 循环似乎处于无限循环中。线程没有结束。有人可以告诉我我做错了什么。还是有更好的方法来等待第二个工作线程完成,以便我可以合并数据。任何帮助,将不胜感激