Назад к вопросам
Junior — Middle
66
Каким образом можно реализовать механизм синхронизации с помощью DispatchGroup в вашем коде?
Ответ от нейросети
sobes.tech AI
DispatchGroup в iOS используется для синхронизации нескольких асинхронных задач, позволяя выполнить определённый код после завершения всех задач в группе.
Пример использования DispatchGroup:
let group = DispatchGroup()
group.enter()
DispatchQueue.global().async {
// Асинхронная задача 1
print("Задача 1 выполнена")
group.leave()
}
group.enter()
DispatchQueue.global().async {
// Асинхронная задача 2
print("Задача 2 выполнена")
group.leave()
}
// Код, который выполнится после завершения всех задач
group.notify(queue: DispatchQueue.main) {
print("Все задачи завершены")
}
Здесь мы вручную вызываем enter() перед началом каждой асинхронной задачи и leave() после её завершения. Метод notify позволяет выполнить блок кода, когда все задачи в группе завершены.