Вступить в клуб →
средняявопросSwift Concurrency: Task, акторы и MainActor

Фото галереи после загрузки в TaskGroup встают в случайном порядке

let images = try await withThrowingTaskGroup(of: UIImage.self) { group in
    for url in urls {
        group.addTask { try await loader.image(from: url) }
    }
    var result: [UIImage] = []
    for try await image in group { result.append(image) }
    return result
}

Товар имеет 8 фото, первое должно быть главным. После загрузки порядок каждый раз разный. Как сохранить исходный порядок и параллельность?

  • Возвращать из задачи пару: индекс и картинку
  • Добавлять задачи в группу в обратном порядке
  • Отсортировать картинки по размеру данных
  • Ждать каждую задачу сразу после addTask

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

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

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

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