क्या कोटलिन कोरटाइन का उपयोग उत्पादन में किया जा सकता है, और उनकी प्रायोगिक स्थिति का क्या मतलब है?
क्या कोटलिन कोरटाइन का उपयोग उत्पादन में किया जा सकता है, और उनकी प्रायोगिक स्थिति का क्या मतलब है?
जवाबों:
अद्यतन : Kotlin coroutines अब Kotlin 1.3 के रूप में प्रयोगात्मक नहीं हैं।
कोटलिन कोरटाइन उत्पादन में इस्तेमाल किया जा सकता है। कोटलिन 1.1 में आधिकारिक तौर पर उन्हें रिहा करने का मुख्य कारण था। उन्हें रिहा करने के बाद, JetBrains टीम ने किसी भी बदलाव के संबंध में पश्चगामी अनुकूलता बनाए रखने के लिए प्रतिबद्ध किया था, जो कि उनके द्वारा जारी किए गए छोटे-मोटे बदलावों के रूप में पेश किए जाते हैं, जबकि लोग उन्हें जटिल उत्पादन अनुप्रयोगों में सुरक्षित रूप से प्रयास करने की अनुमति देते हैं।
संक्षेप में, "प्रयोगात्मक" और "सामान्य" सुविधाओं के बीच का अंतर यह है कि सामान्य कोटलिन सुविधाओं के लिए नए सामान को मामूली अपडेट में नहीं जोड़ा जा सकता है, क्योंकि "पूर्ण संगतता" गारंटी है, जबकि प्रयोगात्मक सुविधाओं के लिए नया सामान जोड़ा जा सकता है, लेकिन कुछ भी नहीं हटाया जा सकता (पीछे की संगतता की गारंटी के कारण)।
प्रायोगिक कोरआउट एक अलग kotlin.coroutines.experimental
पैकेज नाम का उपयोग करते हैं , ताकि जब कॉरटाइन्स डिज़ाइन को अंतिम रूप दिया जाए और वे kotlin.coroutines
पैकेज में स्थानांतरित हो जाएं , तो पुराना संकलित कोड टूट नहीं जाएगा, लेकिन एक अलग समर्थन पुस्तकालय के माध्यम से काम करना जारी रखेगा।
आगे की चर्चा (लंबे समय तक) के बारे में कि वे "प्रयोगात्मक" क्यों हैं और इसका क्या मतलब है, इस मंच पोस्ट में एंड्री ब्रेस्लेट द्वारा पाया जा सकता है ।
यही सवाल कॉरआउट समर्थन पुस्तकालयों पर भी लागू होता है।
का वर्तमान संस्करण kotlinx.coroutines
उत्पादन उपयोग के लिए डिज़ाइन किया गया है। यह बहुत अच्छी तरह से परीक्षण के साथ कवर किया गया है, बहुत सारी चीजें पहले से ही अनुकूलित हैं, सभी परिवर्तन पहले संकलित कोड के साथ पीछे की संगतता के मुद्दों पर विचार कर रहे हैं। यह निश्चित रूप से विभिन्न कोरटाइन-आधारित चीजों के लिए एक परीक्षण-बिस्तर के रूप में काम करता है, इसलिए कुछ हिस्से ऐसे हैं जिन्हें स्पष्ट रूप से "कार्य में प्रगति" या संबंधित कार्यों और कक्षाओं के प्रलेखन में "अस्थिर" के रूप में चिह्नित किया गया है। हालाँकि, डिफ़ॉल्ट रूप से, सभी सार्वजनिक APIs kotlinx.coroutines
को स्थिर माना जाता है और उपयुक्त प्रवासन सहायता के साथ, यदि आवश्यक हो, विकसित किया जा रहा है।
The feature "coroutines" is experimental (see more here)
और kotlinlang.org/docs/diagnostics/experimental-coroutines.html पर