Async в консольном приложении в C #? [Дубликат]

На этот вопрос уже есть ответ здесь:

Можно'не могу указатьасинхронный» модификатор на 'Главный' метод консольного приложения 15 ответов

У меня есть этот простой код:

public static async Task SumTwoOperationsAsync()
{
    var firstTask = GetOperationOneAsync();
    var secondTask = GetOperationTwoAsync();
    return await firstTask + await secondTask;
}


private async Task GetOperationOneAsync()
{
    await Task.Delay(500); // Just to simulate an operation taking time
    return 10;
}

private async Task GetOperationTwoAsync()
{
    await Task.Delay(100); // Just to simulate an operation taking time
    return 5;
}

Отлично. это компилируется.

Но допустим, у меня есть консольное приложение, и я хочу запустить приведенный выше код (вызов)SumTwoOperationsAsync()

 static  void Main(string[] args)
        {
             SumTwoOperationsAsync();
        }

Но я'прочитал это (при использованииsync) Я должен синхронизировать все путивверх а такжевниз :

Вопрос : Значит ли это, что мойMain функция должна быть помечена как?async

Ну этоне может быть, потому что есть ошибка компиляции:

точка входа не может быть помеченаасинхронный» модификатор

Если я понимаю асинхронный материал, поток будет входить вMain функция ----> SumTwoOperationsAsync ---->вызовет обе функции и будет отсутствовать. но покаSumTwoOperationsAsync

Что мне не хватает?

Ответы на вопрос(4)

Ваш ответ на вопрос