У меня есть консольное приложение, и я хочу запускать задачи один за другим.Task.Wait() не ждет завершения задачи
Вот мой код:
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 с ограниченным курсом, поэтому я хочу делать это один за другим.
Почему он не ждет завершения одного поиска перед тем, как начать следующий поиск?
Метод поиска использует некоторые методы которые должны быть вызваны асинхронно, и я получил ошибку, пытаясь назвать это нормально сначала, поэтому я попробовал это так и работал. – Guerrilla
Также понимайте, что это поведение отлично, вы ожидаете, когда задача завершит метод Async, который будет иметь 'await', который возвращает и' Task Wait', поэтому вы не можете жаловаться –