await возможно только внутри асинхронных функций, отмеченных ключевым словом async. Однако в Visual Studio Code могут возникнуть исключения из этого правила.await вне асинхронных функций. Это возможно благодаря расширению кода Await Everywhere.await вне асинхронной функции.async к текущей области кода.async и добавляет точку возврата Task.await Task.Delay(1000);
Console.WriteLine("Hello, world!");
Обычно этот код вызовет ошибку, так как await используется вне асинхронной функции. Однако с расширением Await Everywhere код будет преобразован в следующий:
Task AwaitEverywhere()
{
await Task.Delay(1000);
Console.WriteLine("Hello, world!");
}
Ограничения
Хотя расширение Await Everywhere позволяет использовать await вне асинхронных функций, следует учитывать некоторые ограничения:
await вне асинхронных функций, рекомендуется придерживаться обычного подхода и использовать await только внутри асинхронных функций. Это обеспечит большую стабильность и проверяемость кода.