C# में एसिंक्रोनस प्रोग्रामिंग अवरुद्ध गतिविधियों के लिए एक कुशल दृष्टिकोण है या एक्सेस में देरी हो रही है। यदि एक तुल्यकालिक प्रक्रिया में इस तरह से कोई गतिविधि अवरुद्ध है, तो पूरा आवेदन प्रतीक्षा करता है और इसमें अधिक समय लगता है। एप्लिकेशन प्रत्युत्तर देना बंद कर देता है। अतुल्यकालिक दृष्टिकोण का उपयोग करते हुए, अनुप्रयोग अन्य कार्यों के साथ भी जारी रहते हैं।
सी # में एसिंक और प्रतीक्षित कीवर्ड एसिंक प्रोग्रामिंग में उपयोग किए जाते हैं। उनका उपयोग करके, आप .NET Framework संसाधनों, .NET कोर, आदि के साथ काम कर सकते हैं। async कीवर्ड का उपयोग करके परिभाषित अतुल्यकालिक विधियों को async विधियाँ कहा जाता है।
एक जीयूआई के साथ एक आवेदन, कतार की सामग्री की जांच करें और यदि कोई असंसाधित कार्य है, तो यह इसे बाहर निकालता है और इसे पहले संसाधित करता है। कोड समकालिक रूप से निष्पादित होता है और असंसाधित कार्य पहले पूरा होता है। यदि संसाधन में अपेक्षा से अधिक समय लगता है, तो एप्लिकेशन संदेशों का जवाब देना बंद कर देगा।
आइए देखें कि ऊपर क्या चर्चा की गई है -
private void OnRequestDownload(object sender, RoutedEventArgs e) { var req = HttpWebRequest.Create(_requestedUri); var res = req.GetResponse(); }
उपरोक्त समस्या को हल करने के लिए, async और प्रतीक्षित कीवर्ड का उपयोग करें -
private async void OnRequestDownload(object sender, RoutedEventArgs e) { var req= HttpWebRequest.Create(_requestedUri); var res = await req.GetResponseAsync(); }