Каким образом можно завершить выполнение асинхронной операции?

В C# асинхронная операция завершается автоматически, когда достигается конец метода, помеченного ключевым словом async, или когда возвращается результат (например, через return).

Короткий ответ

Что ответить на собеседовании

В C# асинхронная операция завершается автоматически, когда достигается конец метода, помеченного ключевым словом async, или когда возвращается результат (например, через return). Если нужно досрочно завершить асинхронную операцию, можно использовать:

Подробный разбор

Ответ с пояснениями

В C# асинхронная операция завершается автоматически, когда достигается конец метода, помеченного ключевым словом async, или когда возвращается результат (например, через return). Если нужно досрочно завершить асинхронную операцию, можно использовать:

  • Возврат результата через return.
  • Генерацию исключения для прерывания выполнения.
  • Отмена через CancellationToken, если операция поддерживает отмену.

Пример досрочного завершения с CancellationToken:

async Task DoWorkAsync(CancellationToken token)
{
    for (int i = 0; i < 10; i++)
    {
        token.ThrowIfCancellationRequested();
        await Task.Delay(1000);
    }
}

Таким образом, завершение асинхронной операции контролируется либо логикой метода, либо внешним сигналом отмены.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку