我有一个控制台应用程序,希望能够按顺序启动任务。
以下是我的代码:
static void Main()
{
string keywords = "Driving Schools,wedding services";
List<string> kwl = keywords.Split(',').ToList();
foreach(var kw in kwl)
{
Output("SEARCHING FOR: " + kw);
Task t = new Task(() => Search(kw));
t.Start();
t.Wait();
}
Console.ReadLine();
}
static async void Search(string keyword)
{
// code for searching
}
问题在于它不等待第一个任务完成执行。它会同时触发后续的任务。
我使用限速API,所以想一个接一个地执行任务。
为什么它不等待一个搜索完成才开始下一个搜索?
await
,它返回并且Task Wait
完成,因此你不能抱怨。 - Mrinal Kamboj