2012-01-18 7 views
12

मैंने हमेशा सिल्वरलाइट में इस्तेमाल किए गए कीवर्ड एसिंक को देखा है, लेकिन यह सोच रहा था कि डमी के स्पष्टीकरण वाले किसी व्यक्ति के पास क्या है और इसका उपयोग कब और उसके फायदे हैं। कृपया अगर आप समझा सकते हैं, तो बहुत सराहना की जाएगी। धन्यवाद।एसिंक और प्रतीक्षा क्या है और आप इन्हें विंडोज़ विकास में कब उपयोग करेंगे?

+0

पर एक नजर है, तो चीजें एक-दूसरे से स्वतंत्र समय में होती हैं। उदाहरण के लिए, आपके पास एक बटन है जो डेटाबेस से पूछताछ करता है। यदि आप इसे अतुल्यकालिक बनाने के लिए अपने रास्ते से बाहर नहीं जाते हैं, तो आपका पूरा कार्यक्रम रुकने जा रहा है और इससे पहले कि आप कुछ और करने की अनुमति देने से पहले इसे खत्म कर दें। यदि आप ऐसा नहीं करना चाहते हैं, तो आप इसे एसिंक्रोनस (आमतौर पर किसी अन्य थ्रेड का उपयोग करके) बना सकते हैं, और फिर भी अपने यूआई का नियंत्रण बनाए रख सकते हैं, उदाहरण के लिए। – CptSupermrkt

+0

@CptSupermrkt यह उल्लेख करता है कि async/await के मुख्य बिंदुओं में से एक है * नए धागे को बढ़ाने से बचने के लिए *। उदाहरण के लिए, http://blogs.msdn.com/b/ericlippert/archive/2010/10/29/asynchronous-programming-in-c-5-0-part-two-whence-await.aspx देखें, जो भाग में कहते हैं "एसिंक तरीकों का पूरा बिंदु यह है कि आप जितना संभव हो सके मौजूदा धागे पर रहते हैं।" – phoog

+0

@phoog - स्प्रेडिंग धागे सही धागे पर रहने के समान नहीं हैं। –

उत्तर

12

this blog post पर एक नज़र डालें, यह एक अच्छा परिचय और स्पष्टीकरण देता है कि एसिंक और प्रतीक्षा क्या है।

तुम सच में यह समझना चाहते हैं, यह सूत्रण यह एक बहुत बड़ी विषय है साथ एक बहुत ऊपर आता है, लेकिन अगर आप सिर्फ एक बुनियादी व्यावहारिक एक वाक्य जवाब चाहिए, अतुल्यकालिक मतलब यह है कि दो Jon Skeet's series on async and await

+0

पहला लिंक "यह ब्लॉग पोस्ट" आश्चर्यजनक रूप से स्पष्ट और उपयोगी है। बहुत सी चीजों को स्पष्ट किया। –

+3

हालांकि यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, [यह बेहतर होगा] (// meta.stackoverflow.com/q/8259) यहां उत्तर के आवश्यक हिस्सों को शामिल करने के लिए, और संदर्भ के लिए लिंक प्रदान करें। – Makyen

15

my introductory article in MSDN magazine के साथ शुरू करें।

और फिर the papers on the async CTP site पढ़ें।

और फिर these fifteen articles: पढ़ें।

यदि आपके पास अभी भी सभी के बाद प्रश्न हैं, तो the async forum पर पूछने का प्रयास करें।

+2

हालांकि यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, [यह बेहतर होगा] (// meta.stackoverflow.com/q/8259) यहां उत्तर के आवश्यक हिस्सों को शामिल करने के लिए, और संदर्भ के लिए लिंक प्रदान करें। – Makyen

+0

@Makyen: मैं आपको एक ऐसा उत्तर लिखने के लिए प्रोत्साहित करता हूं जो वास्तव में करता है। इस तरह हम सभी को आपके ज्ञान से फायदा होता है। –

+2

मुझे यकीन है कि आप मुझसे बेहतर योग्य हैं। मेरी टिप्पणी का उद्देश्य आपको याद दिलाना है कि यह उन उत्तरों में से एक है जो वर्षों से एसओ में बदलाव से प्रभावित हुए हैं। यह केवल लिंक का संग्रह होने के कारण "उत्तर नहीं" होने के लिए पूरी तरह स्वीकार्य होने से चला गया है (जिसमें से एक मर चुका है; इससे पहले कि यह मर गया, इससे पहले कि आप इसे यहां जोड़कर महत्वपूर्ण रूप से बदल गए)। तथ्य यह है कि एक लिंक मृत है, यह एक अच्छा उदाहरण है कि यहां जरूरी चीजों को शामिल करना बेहतर क्यों है। – Makyen