Sobes.tech
Junior

Data task მეთოდი სინქრონული თუ ასინქრონული მუშაობს?

sobes.tech AI

პასუხი AI-სგან

ასინქრონული.

// URLSessionDataTask ასინქრონულად შესრულდება.
// ის დაუყოვნებლივ აბრუნებს კონტროლს,
// და შედეგი (მონაცემები, პასუხი, შეცდომა) გადაეცემა დასრულების დამუშავებელს
// შემდეგ, როდესაც ქსელის მოთხოვნა ფონურ ნაკადში დასრულდება.
let task = URLSession.shared.dataTask(with: url) { data, response, error in
    // ეს ბლოკი კოდი ასინქრონულად შესრულდება
    // სერვერიდან პასუხის მიღების ან შეცდომის შემთხვევაში.
    if let data = data {
        print("მიღებული მონაცემები: \(data.count) ბაიტი")
    } else if let error = error {
        print("შეცდომა: \(error.localizedDescription)")
    }
}

// დავიწყებთ დავალებას.
// resume() მეთოდი უბრალოდ დებს დავალებას რიგში.
task.resume()

// კოდი შემდეგ task.resume() სწრაფად შესრულდება,
// ქსელის მოთხოვნის დასრულების მოლოდინით.
print("დავალება დაიწყო...")