Вопрос проверяет умение координировать параллельные операции и правильно собирать результаты без гонок и преждевременного завершения.
Короткий ответ
В GCD для этого используют DispatchGroup. Каждая задача “входит” в группу перед стартом и “выходит” после завершения. Когда все вышли, вызывается notify, где можно собрать результаты и обновить UI. В Swift Concurrency аналогом является async let или TaskGroup. Важно корректно управлять потокобезопасностью при записи результатов.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.