Swift Academy · पाठ

संरचित समवर्तीता, async फ़ंक्शन

async फ़ंक्शन परिभाषित कीजिए, उन्हें await के साथ कॉल कीजिए और संरचित समवर्तीता समझिए: पैरेंट दायरा समाप्त होने से पहले चाइल्ड टास्क पूरे हो जाते हैं।

पाठ 1, कुल 3 में से8 चरण

संरचित समवर्तीता, async फ़ंक्शन, CoddyKit पर Swift Academy का एक निःशुल्क पाठ है। यह 3 में से 1वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Swift Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Swift Academy पाठ्यक्रम में कुल 3 पाठ शामिल हैं।

async/await क्यों?

async/await आपको ऐसा असिंक्रोनस कोड लिखने देता है जो सिंक्रोनस कोड जैसा पढ़ा जाता है। संरचित समवर्तीता के साथ, चाइल्ड टास्क स्कोप के जीवनकाल से जुड़े रहते हैं—इससे कोई रिसाव नहीं होता।

आपका पहला async फ़ंक्शन

एक async फ़ंक्शन दूसरे async कार्य पर await कर सकता है। उसे कॉल करने के लिए स्क्रिप्ट या प्लेग्राउंड में एक Task बनाएँ।

// Simulate a short async delay, then return a value
func fetchNumber() async -> Int {
    try? await Task.sleep(nanoseconds: 200_000_000) // ~200ms
    return 42
}

// Call sites must use "await" from an async context or a Task
Task {
    let n = await fetchNumber()
    print("Fetched:", n)  // 42
}

निलंबन, फिर पुनः आरंभ

await परिणाम तैयार होने तक टास्क को निलंबित करता है, फिर निष्पादन अगली पंक्ति से सुव्यवस्थित रूप से जारी रहता है।

func greet(after seconds: Double) async -> String {
    let ns = UInt64(seconds * 1_000_000_000)
    try? await Task.sleep(nanoseconds: ns)
    return "Hello after \(Int(seconds))s"
}

Task {
    print(await greet(after: 1.0))
    print("Back on the same task after await.")
}

async let की मूल बातें

चाइल्ड टास्क शुरू करने के लिए async let का उपयोग करें। वे वर्तमान स्कोप से जुड़े होते हैं और स्कोप से बाहर निकलने से पहले उन पर await करना आवश्यक है।

// Run child tasks concurrently within the same scope
func fetchUser() async -> String { "Ana" }
func fetchScore() async -> Int { 90 }

Task {
    async let name = fetchUser()
    async let score = fetchScore()
    // Both start immediately; await joins them before use
    let summary = await "\(name): \(score)"
    print(summary) // "Ana: 90"
    // Scope ends -> child tasks are awaited automatically (structured)
}

पैरेंट चाइल्ड से जुड़ते हैं

संरचित का अर्थ है कि पैरेंट चाइल्ड के पूरा होने से पहले समाप्त नहीं हो सकते। इससे अनाथ कार्य रुकते हैं और जीवनकाल पूर्वानुमेय बनते हैं।

// Parent Task encapsulates children lifetimes
func loadProfile() async -> String {
    async let name = fetchUser()
    async let score = fetchScore()
    return await "\(name) (\(score))"
}

Task {
    let profile = await loadProfile()
    print(profile) // e.g., "Ana (90)"
    // loadProfile does not return until its children are done
}

दिशानिर्देश

सुझाव:

  • थ्रेड के बजाय टास्क के रूप में सोचें।
  • समानांतर कार्यों के लिए async let का उपयोग करें; स्कोप से बाहर निकलने से पहले await करें।
  • प्रदर्शनों के लिए Task.sleep से सोएँ; वास्तविक ऐप नेटवर्क या फ़ाइल इनपुट/आउटपुट के लिए await करते हैं।

await की परिभाषा

त्वरित जाँच: await क्या करता है?

पुनरावलोकन

पुनरावलोकन: फ़ंक्शनों को async चिह्नित करें और उन्हें await के साथ कॉल करें। समानांतर चाइल्ड टास्क शुरू करने के लिए async let का उपयोग करें और पैरेंट से पहले चाइल्ड को समाप्त करने के लिए संरचित समवर्तीता पर निर्भर रहें।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Swift सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
122
पाठ
409

अक्सर पूछे जाने वाले प्रश्न

क्या “संरचित समवर्तीता, async फ़ंक्शन” पाठ निःशुल्क है?

हाँ — Swift Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “संरचित समवर्तीता, async फ़ंक्शन” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Swift Academy पाठ्यक्रम में कुल 3 पाठ शामिल हैं।

“संरचित समवर्तीता, async फ़ंक्शन” में मैं क्या सीखूँगा?

async फ़ंक्शन परिभाषित कीजिए, उन्हें await के साथ कॉल कीजिए और संरचित समवर्तीता समझिए: पैरेंट दायरा समाप्त होने से पहले चाइल्ड टास्क पूरे हो जाते हैं। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Swift Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Swift Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Swift Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 3 में से 1वाँ पाठ है।

“संरचित समवर्तीता, async फ़ंक्शन” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Swift Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Swift Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. संरचित समवर्तीता, async फ़ंक्शन
  2. async let, Task और रद्दीकरण
  3. try await और त्रुटि प्रसार
← Swift Academy पर वापस जाएँ