Подтвердить что ты не робот

Использование async без ожидания

Я хотел бы сделать функцию async, поэтому я просто добавляю async следующим образом:

public async static void something(){
}

Вы можете видеть, что его возвращаемый тип void. Я просто хочу, чтобы эту функцию вызывали асинхронно без блокировки, так как return void, поэтому нет await.

Но Visual Studio 2012 просто не может скомпилировать это, он говорит, что я пропустил await?

Не могли бы вы посоветовать образец, который выполняет функцию async без использования await.

4b9b3361

Ответ 1

Я думаю, что, возможно, вы не понимаете, что делает async. Предупреждение верно: если вы пометили свой метод async, но не используете await в любом месте, то ваш метод не будет асинхронным. Если вы его вызываете, весь код внутри метода будет выполняться синхронно.

Кроме того, вы должны стараться избегать использования методов async void, они затрудняют обработку исключений.