Sobes.tech
Junior — Middle

Da li imate iskustva sa DispatchGroup u vašim projektima za sinhronizaciju zadataka?

sobes.tech АИ

Одговор од АИ

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 на главной очереди. Это удобно для координации нескольких операций, например, загрузки данных из разных источников.