Вступить в клуб →
сложнаявопросКорутины, async/await и UniTask

Обработку ошибок загрузки в корутине обернули в try/catch — проект перестал компилироваться

IEnumerator DownloadAvatar(string url)
{
    try
    {
        using var request = UnityWebRequestTexture.GetTexture(url);
        yield return request.SendWebRequest();
        avatar.texture = DownloadHandlerTexture.GetContent(request);
    }
    catch (Exception e)
    {
        Debug.LogWarning(e);
        avatar.texture = placeholder;
    }
}

Компилятор выдаёт ошибку на строке с yield return. Как правильно обработать неудачную загрузку?

  • Проверять request.result после yield без catch
  • Перенести catch внутрь блока finally
  • Заменить yield return на yield break
  • Обернуть в try/catch вызов StartCoroutine

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

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

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

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