Sobes.tech
Junior — Middle

GCD yordamida bir vaqtning o'zida o'n ta tarmoq so'rovlarini qanday yuborasiz?

sobes.tech AI

AIdan javob

iOS'da GCD (Grand Central Dispatch) yordamida bir vaqtning o'zida o'n ta tarmoq so'rovini yuborish uchun DispatchGroup vazifa guruhini yaratishingiz va unga asinxron so'rovlarni qo'shishingiz mumkin. Bu barcha so'rovlarni parallel tarzda ishga tushirish va ularning yakunlanishini kuzatish imkonini beradi.

Swiftda misol:

let dispatchGroup = DispatchGroup()

for i in 1...10 {
    dispatchGroup.enter()
    let url = URL(string: "https://example.com/request\(i)")!
    let task = URLSession.shared.dataTask(with: url) { data, response, error in
        // Javobni qayta ishlash
        print("So'rov \(i) yakunlandi")
        dispatchGroup.leave()
    }
    task.resume()
}

dispatchGroup.notify(queue: .main) {
    print("Barcha so'rovlar yakunlandi")
}

Bu yondashuv parallel vazifalarni samarali boshqarish va barcha so'rovlar tugagach kodni bajarish imkonini beradi.