Назад к вопросам
Вкусно и точка
Junior — Middle
77
Имели ли опыт использования DispatchGroup в своих проектах для синхронизации задач?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
DispatchGroup используется для синхронизации нескольких асинхронных задач в iOS. Он позволяет отслеживать, когда группа задач завершила выполнение, и выполнять код после этого.
Пример использования:
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: .main) {
print("Все задачи завершены")
}
В этом примере две асинхронные задачи выполняются параллельно, а после их завершения вызывается блок notify на главной очереди. Это удобно для координации нескольких операций, например, загрузки данных из разных источников.