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.