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

Один UniTask загрузки конфигов ждут два менеджера — второй получает исключение

public UniTask ConfigsReady { get; private set; }

void Awake() => ConfigsReady = LoadConfigsAsync();

// ShopManager:      await bootstrap.ConfigsReady;
// InventoryManager: await bootstrap.ConfigsReady;

Магазин загружается, а инвентарь падает с InvalidOperationException. С Task такой код работал. Что не так?

  • UniTask нельзя ожидать дважды; нужен Preserve()
  • UniTask нельзя хранить в свойстве класса
  • LoadConfigsAsync нельзя вызывать в Awake
  • Менеджеры должны ждать задачу в одном кадре

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

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

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

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