async/प्रतीक्षा | तीव्र

Mar 04 2023
async/प्रतीक्षा करें।
async/प्रतीक्षा | तीव्र

async/प्रतीक्षा करें

  • async कीवर्ड का उपयोग फ़ंक्शन को एसिंक्रोनस के रूप में परिभाषित करने के लिए किया जाता है।
  • एसिंक्रोनस फ़ंक्शंस टास्क ऑब्जेक्ट लौटाते हैं।
  • कार्य वस्तु का उपयोग रद्द करने , प्रतीक्षा करने , या त्रुटियों को संभालने के लिए किया जा सकता है ।
  • यह अतुल्यकालिक कोड को अधिक समकालिक शैली में लिखने की अनुमति देता है , बिना हैंडलर (क्लोजर) को पूरा करने की आवश्यकता के बिना।
  • Async /प्रतीक्षा का उपयोग अतुल्यकालिक API के साथ किया जा सकता है, जैसे URLSession, DispatchQueue, और अन्य।
  • import UIKit
    import Foundation
    
    // Codable is a typealias that conforms Decodable & Encodable protocols
    struct Post: Codable {
        let userId: Int
        let id: Int
        let title: String
        let body: String
    }
    
    // Fetch posts
    func fetchPosts() async throws -> [Post] {
        guard let url = URL(string: "https://jsonplaceholder.typicode.com/posts") else { return [] }
        
        let (data, _) = try await URLSession.shared.data(from: url)
        let decoder = JSONDecoder()
        return try decoder.decode([Post].self, from: data)54
    }
    
    // Request posts
    func requestPosts() {
        Task {
            let posts = try await fetchPosts()
            print("Posts count:", posts.count)
        }
    }
    
    requestPosts() // Output: Posts count: 100