दिलचस्प पोस्ट
पटरियों: शामिल बनाम: जुड़ती है कंपास सहित एंड्रॉइड फोन अभिविन्यास का अवलोकन यूनिट टेस्ट (एमएसटीईस्ट) समानांतर में कैसे चलाएं? पायथन सॉर्ट लिस्ट सूची / चढ़ते हुए और उसके बाद डेडिंग यह देखने के लिए कि एक शाखा में कौन सी कमाई दूसरे में नहीं है? jquery form.serialize और अन्य पैरामीटर DisplayNameFor () मॉडल से <ऑब्जेक्ट> सूची में से मैं गलत तरीके से नेस्टेड / अटैचड एचटीएमएल टैग कैसे ठीक करूं? मुझे आईडीई का उपयोग क्यों करना चाहिए? Express.js में 'अगले / अगले ()' को समझने की कोशिश करने के लिए एक कठिन समय आ रहा है कमांड लाइन तर्कों को कैसे पढ़ें / प्रक्रिया करें? एक NumPy 2d सरणी का टुकड़ा करना, या मैं एक एनएक्सएन सरणी (n> m) से एक एमएक्सएम सबपाट्रिक्स कैसे निकालूं? ऐप आईओएस आईपीवी 6 नेटवर्क से अस्वीकृत अजगर में एक शब्द की दीप प्रतिलिपि स्विफ्ट 3 IOS अनुकूलता

Async-await on .net 4 का उपयोग करना

मैं वर्तमान में एक ऐसा अनुप्रयोग बनाने शुरू कर रहा हूं जो C # 5 के asyncawait सुविधा से बहुत फायदा होगा। लेकिन मुझे यकीन नहीं है कि किस संस्करण का वीएस और एसिंक रनटाइम का उपयोग करना है।

ओएस लोकप्रियता चार्ट को देखते हुए, मुझे और अधिक तीन साल या उससे भी अधिक के लिए Windows XP का समर्थन करने की आवश्यकता होगी। ऐसा लगता है कि नेट 4.5 केवल विंडोज के नए संस्करणों पर चलता है, इसलिए मुझे .NET 4.0 को लक्षित करना होगा। विकास मशीनें विंडोज 7 का उपयोग करती हैं, इसलिए वी.एस. का एक नया संस्करण इस्तेमाल करना एक समस्या नहीं है।

अब मुझे पहले ऐसा करने के लिए संकलक को चुनना होगा:

  • एएससीएनसीटीपी के साथ वीएस 02010
  • VS2012 पूर्वावलोकन (और अंतिम एक बार आने पर), .net 4.0 पर लक्ष्य सेट करना
  • मोनो (लगता है कि 2.12 में एसिंक-इंतजार है, मुझे पसंद है / मोनोडेक्वेल पर वीएस के लिए आईडीई के रूप में उपयोग किया जाता है)

कौन सी कम कोड-जनरल कीड़े हैं? जॉन स्कीट के ब्लॉग को देखते हुए VS2012 पूर्वावलोकन सीटीपी से कभी भी कोड जनरेटर का उपयोग नहीं करता है।

और अधिक महत्वपूर्ण बात यह है कि किस रनटाइम का उपयोग करें?

क्या वीएस2012 में एनएटी 4 के साथ उपयोग के लिए पुनर्वितरण योग्य async रनटाइम है?

मैं एन्स्कसीटीपी रनटाइम को संदर्भित करके, पूर्वावलोकन के साथ कोड संकलित करने में कामयाब रहा। लेकिन चूंकि सीटीपी अजीब लाइसेंसिंग शर्तों है, यह एक अच्छा दीर्घकालिक समाधान की तरह नहीं दिखता है।

या क्या मुझे किसी तीसरे पक्ष के कार्यान्वयन का उपयोग करना चाहिए? शायद मोनो एक है?

लाइब्रेरी के वितरण के लिए मैं बस कुछ ही तरह के इंस्टालर के बजाय आवेदन के रूप में एक ही निर्देशिका में डीएलएल डाल रहा हूं।

मुझे यह भी अच्छा लगेगा कि अगर मेरी बायनेरी मोनो + लिनक्स / मैकोड पर बिना बदलाव किए काम करेगी तो रनटाइम या तो मोनो के साथ संगत होना चाहिए (संभवत: 2.12) जो कि में निर्मित है, या गैर विंडो ओएस पर उपयोग की अनुमति दें।

Solutions Collecting From Web of "Async-await on .net 4 का उपयोग करना"

माइक्रोसॉफ्ट AsyncCTP के लिए एक प्रतिस्थापन के रूप में Nuget के माध्यम से Async लक्ष्यीकरण पैक (Microsoft.Bcl.Aynync) जारी किया।

आप इसके बारे में यहां अधिक पढ़ सकते हैं: http://blogs.msdn.com/b/bclteam/archive/2013/04/17/microsoft-bcl-async-is-now-stable.aspx

आप यहां पिछले संस्करण के बारे में पढ़ सकते हैं: http://blogs.msdn.com/b/lucian/archive/2012/04/24/async-targeting-pack.aspx

जैसा कि यह पैक आधिकारिक तौर पर समर्थित है, मुझे अब विश्वास है कि एक्सपी + एसिंक को लक्षित करने का सबसे अच्छा विकल्प विजुअल स्टूडियो 2012 + सी # 5 + एसिंक लक्ष्यीकरण पैक का उपयोग करेगा।

यदि आपको .NET 3.5 को लक्षित करने की आवश्यकता महसूस होती है, तो भी आप नेट (।) 3.5 के लिए अपने AsyncBridge का उपयोग कर सकते हैं।

यदि आप अन्य नेट भाषा पर विचार करने के लिए खुले हैं, एफ # आपकी समस्या को हल कर सकते हैं। इसमें साल के लिए एसिंक {} कंप्यूटेशन अभिव्यक्ति होती है, और नेट 2.0 के साथ भी पीछे की ओर संगत है। न्यूनतम आवश्यकता है Windows XP SP3 रनटाइम यहां डाउनलोड किया जा सकता है ।

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

आपका अगला मुद्दा आईडीई है मोनो डेवलप स्पष्ट रूप से अच्छी तरह से काम करेगा लेकिन आप कहते हैं कि आप विज़ुअल स्टूडियो को पसंद करते हैं

ग्रेग हुर्लमन ने विजुअल स्टूडियो से मोनो 2.8 के खिलाफ कोड को एक प्रोफाइल बनाया । यदि आप उसके साथ अनुवर्ती हैं, तो वह आपको मोनो 2.11 / 2.12 के विरूद्ध दृश्य स्टूडियो में विकसित करने के लिए सही दिशा में बता सकते हैं।

बेशक, विजुअल स्टूडियो के लिए मोनो टूल्स भी हैं जो एक व्यावसायिक उत्पाद है। मुझे लगता है कि यह अभी भी Xamarin द्वारा पेशकश की जा रही है

आप एनओटी के शीर्ष पर मोनो से अपेक्षित 4.5 प्रोफ़ाइल विधानसभाओं को चलाने में भी सक्षम हो सकते हैं, लेकिन मैंने ऐसा नहीं किया है 4.5 प्रोफ़ाइल 4.0 एपीआई का सख्त सुपर-सेट है। शायद इसे एक शॉट दे और वापस रिपोर्ट करें

संपादित करें: ऐसा लगता है कि आप अब उत्पादन में विजुअल स्टूडियो एसिंक सीटीपी का उपयोग कर सकते हैं

यहां डाउनलोड पृष्ठ पर यह कहता है:

उत्पादन उपयोग के लिए एक नया EULA शामिल है नोट – यह लाइसेंस आपके उत्पादन कोड के लिए आपके द्वारा सीटीपी का उपयोग करने के लिए प्रोत्साहन का गठन नहीं करता है। सीटीपी एक असमर्थित और उपयोग-आधारित-अपने-जोखिम वाले तकनीकी पूर्वावलोकन बनी हुई है। हालांकि, हमें डेवलपर्स से उत्पादन कोड के लिए सीटीपी का उपयोग करने के लिए कई अनुरोध प्राप्त हुए हैं, और इस तरह से लाइसेंस की अनुमति देने के लिए उसे बदल दिया गया है।

Async / await का उपयोग करते हुए .NET 4.0 को लक्षित करने के लिए VS 12 बीटा का उपयोग करना संभव है।

आपको अपनी प्रोजेक्ट में कुछ कोड कॉपी करने की ज़रूरत है जो कि प्रकार प्रदान करता है जो कंपाइलर पर निर्भर करता है।

यहाँ विवरण

संपादित करें: हमने इस तकनीक को लिया है और इसे एक ओपन सोर्स लाइब्रेरी में बदल दिया है, जिसे असिनकब्रिज कहा जाता है: https://nuget.org/packages/Aynyncbridge

यदि आप एमएस विज्ञप्ति सी # 5.0 के बाद अपने सॉफ्टवेयर को बांटना शुरू करना चाहते हैं, तो आप एएससीएनसीटीपी का उपयोग कर विकास करना शुरू कर सकते हैं। अन्यथा मैं आपको इसका इस्तेमाल करने की अनुशंसा नहीं करता, क्योंकि यह सिर्फ सीटीपी है, बीटा भी नहीं। इसे बीटा चरण और रिहाई के बहुत करीब बदला जा सकता है। यह अस्थिर हो सकता है, आदि।

अगर आप अपने आवेदन में आसान एसिंक ऑपरेशन शुरू करना चाहते हैं तो मैं आपको रिएक्टिव एक्सटेन्शंस और शीर्ष (रिएक्टिव UI, आदि) पर बने सामान का उपयोग करने की सलाह देता हूं, यह सिर्फ सुंदर है

वीएस2012 के लिए, इसमें उसी एसिंक सीटीपी भी शामिल है जहां तक ​​मुझे याद है कि // बिल्ड / टैबलेट एमएस ने मुझे उस सम्मेलन में दिया था।