Вступить в клуб →
лёгкаявопросasync/await, многопоточность и фоновые задачи

Пользователь закрыл вкладку, а тяжёлый отчёт продолжает выполняться в базе минуту

[HttpGet("report")]
public async Task<IActionResult> Report()
{
    var rows = await _db.Orders.Where(...).GroupBy(...).ToListAsync();
    return Ok(rows);
}

Пользователи часто уходят со страницы отчёта, не дождавшись, а запросы продолжают нагружать базу. Как это исправить?

  • Передавать CancellationToken в ToListAsync
  • Вызывать ToList() вместо ToListAsync()
  • Запускать запрос через Task.Run
  • Уменьшить таймаут HTTP-клиента в браузере

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела