पायथन में थ्रेडिंग: पायथन में थ्रेड्स के साथ काम करना सीखें



पायथन में थ्रेडिंग पर यह लेख आपको बताएगा कि थ्रेड्स क्या हैं, इसके प्रकार, उन्हें कैसे शुरू करें और उनका सर्वोत्तम तरीके से उपयोग करें

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

इस लेख में निम्नलिखित बिंदुओं को शामिल किया जाएगा,





हमें शुरू करने दो

पायथन में थ्रेडिंग

पायथन में एक धागा क्या है?

पायथन में एक धागा को केवल निष्पादन के एक अलग प्रवाह के रूप में परिभाषित किया जा सकता है। इसका सीधा मतलब यह है कि आपके कार्यक्रम में एक ही समय में दो अलग-अलग प्रक्रियाओं को निष्पादित किया जाएगा। पायथन में थ्रेडिंग का एक दिलचस्प पहलू यह तथ्य है कि, संस्करण 3 के बाद पायथन में कई धागे एक ही समय में निष्पादित नहीं किए जाते हैं, लेकिन वे केवल दिखाई देते हैं।



जबकि एक ही समय में दो अलग-अलग प्रक्रियाओं को चलाने के लिए यह एक अद्भुत भावना है, एक को यह समझने की आवश्यकता है कि पायथन 3 और इसके बाद के संस्करण के वर्तमान संस्करण को इस तरह से कोडित किया गया है, कि केवल प्रक्रिया को किसी भी समय बिंदु पर चलाया जा सकता है। यदि आपको हालांकि CPython में एक ही समय में एक साथ दो या अधिक प्रक्रियाओं की आवश्यकता है, तो आपको अपना कुछ कोड अन्य भाषाओं में भी C, C ++ और जावा जैसे कोड्स को लिखने की आवश्यकता है, और फिर उन्हें पायथन में मल्टी थ्रेडिंग के माध्यम से चलाएं।

पायथन में थ्रेडिंग के सबसे प्रसिद्ध लाभों में से एक इसकी स्पष्टता प्रदान करने की क्षमता है।

इससे पहले कि हम पायथन में थ्रेडिंग के बारे में कुछ विचार करें, आइए समझते हैं कि धागा कैसे शुरू करें,



अजगर में शक्ति कैसे करें

पायथन में एक धागा शुरू करना

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

आयात लॉगिंग आयात थ्रेडिंग आयात समय डीईएफ़ थ्रेड_फ़ंक्शन (नाम): logging.info ('थ्रेड% s: शुरू', नाम) time.sleep (2) logging.info ('थ्रेड% s: फ़िनिशिंग, नाम') if__name == '__main__': प्रारूप = '% (asctime) s:% (संदेश) s' logging.basicConfig (प्रारूप = प्रारूप, स्तर = logging.INFO, datefmt = '% H:% M:% S') logging.info ( 'मुख्य और ampampampnbsp & ampampampnbsp: थ्रेड बनाने से पहले') x = थ्रेडिंग। थ्रेड (लक्ष्य = थ्रेड_फंक्शन, args = (1,)) logging.info ('मेन एंड ampampampnbsp और ampampampnbsp: रनिंग थ्रेड से पहले') x.start () लॉगिंग.info () & ampampampnbsp: धागा समाप्त होने तक प्रतीक्षा करें ') # x.join () logging.info (' मुख्य और ampampampnbsp & ampampampnbsp: सभी किया ')

आउटपुट

आउटपुट - पायथन में थ्रेडिंग - एडुर्का

जब पायथन में एक धागा चलाते हैं, तो आप इसे एक फ़ंक्शन के रूप में पास करते हैं जिसमें उन तर्कों की एक सूची होती है जिन्हें इसे निष्पादित करने की आवश्यकता होती है। ऊपर दिए गए उदाहरण में, आप पायथन को थ्रेड, थ्रेड_फंक्शन () चलाने के लिए निर्देश दे रहे हैं और इसे तर्क के रूप में 1 पर पास करें।

जब आप उपरोक्त कार्यक्रम चलाते हैं, तो आउटपुट कुछ इस तरह दिखाई देगा।

‘पायथन में थ्रेडिंग’ पर इस लेख का अगला भाग आइए देखें कि डेमन थ्रेड्स क्या हैं,

डेमन थ्रेड्स क्या हैं?

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

इस अवधारणा को समझने के लिए ऊपर दिए गए उदाहरण पर एक नज़र डालें। दूसरी अंतिम पंक्ति में, प्रोग्राम अपने सभी कार्यों को पूरा करने के बाद कुछ सेकंड इंतजार करता है। ऐसा इसलिए है क्योंकि यह गैर-डायमोनिक धागे के लिए अपने ऑपरेशन को खत्म करने और फिर इंटरफ़ेस से बाहर निकलने का इंतजार कर रहा है। एक बार जब धागा अपना ऑपरेशन पूरा कर लेता है, तो केवल प्रोग्राम से बाहर निकलता है।

अब हम उपरोक्त कार्यक्रम को संशोधित करते हैं और देखते हैं कि क्या होता है, यदि हम कोड में एक डेमॉन थ्रेड सम्मिलित करते हैं।

नया कोड: x = थ्रेडिंग। थ्रेड (लक्ष्य = थ्रेड_फंक्शन, आर्ग्स = (1,), डेमन = ट्रू)

जब आप उपरोक्त कार्यक्रम को किए गए संशोधनों के साथ चलाते हैं, तो यह कुछ इस तरह दिखाई देगा।

इन दो आउटपुट के बीच का अंतर यह है कि अंतिम पंक्ति नवीनतम से गायब है। थ्रेड_फंक्शन () को पूरा करने का मौका नहीं मिला, क्योंकि हमने एक डेमन थ्रेड डाला और जैसे ही यह अंत तक पहुंचा, इसने कार्यक्रम से बाहर कर दिया।

एक सूत्र में जुड़ना

अब जब आपने पायथन में एक धागा बनाने की अवधारणा के बारे में जान लिया है, साथ ही एक शैतानी धागे की अवधारणा के साथ, आइए जानें कि आप पायथन में धागे कैसे जोड़ सकते हैं।

कैसे जावा में एक शक्ति के लिए कुछ बढ़ाने के लिए

पायथन में शामिल () फ़ंक्शन का उपयोग करके आप दो अलग-अलग थ्रेड्स में शामिल हो सकते हैं, और एक को दूसरे का इंतजार करने का निर्देश भी दे सकते हैं जब तक कि वह अपना निष्पादन समाप्त नहीं कर लेता। जब आप बड़े अनुप्रयोगों को कोड कर रहे हैं तो यह सुविधा अक्सर काम आएगी और आपको किसी विशेष क्रम में निष्पादित होने वाली सभी प्रक्रियाओं की आवश्यकता होगी

Reading थ्रेडिंग इन पाइथन ’पर इस लेख का अंतिम बिट आपको काम के कई सूत्र दिखाएगा,

मल्टीपल थ्रेड्स के साथ काम करना

उपरोक्त उदाहरणों में हमने बात की है कि आप एक ही बार में दो धागों से कैसे काम कर सकते हैं। लेकिन क्या होगा अगर एक निश्चित स्थिति में, आपको एक ही समय में कई थ्रेड्स के साथ काम करने की आवश्यकता होती है। स्थिति की बेहतर समझ के लिए, नीचे दिए गए उदाहरण पर एक नज़र डालें।

एक सरणी की जावास्क्रिप्ट लंबाई
आयात लॉगिंग आयात थ्रेडिंग आयात समय डीईएफ़ थ्रेड_फ़ंक्शन (नाम): logging.info ('थ्रेड% s: शुरू', नाम) time.sleep (2) logging.info ('थ्रेड% s: फ़िनिशिंग, नाम') if__name == '__main__': प्रारूप = '% (asctime) s:% (संदेश) s' logging.basicConfig (प्रारूप = प्रारूप, स्तर = logging.INFO, datefmt = '% H:% M:% S') सूत्र = सूची () ) रेंज में सूचकांक (3): logging.info ('मुख्य और ampampampnbsp और ampampampnbsp: बनाने और शुरू धागा% d।', सूचकांक) x = थ्रेडिंग। थ्रेड (लक्ष्य = थ्रेड_फंक्शन, आर्गे = (सूचकांक,)) थ्रेड्स। xend ) x.start () इंडेक्स के लिए, थ्रेड इन एन्युमरेट (थ्रेड्स): logging.info ('मेन एंड ampampampnbsp & ampampampnbsp: थ्रेड% d' में शामिल होने से पहले।, index) thread.join () logging.info ('मेन एंड ampampampnbsp & ampampampnbsp: थ्रेड% d किया ', सूचकांक)

आउटपुट

उपरोक्त कार्यक्रम में हमने थ्रेड लाइब्रेरी को आयात करने की समान प्रक्रिया का पालन किया है, थ्रेड को शुरू करते हुए, कई थ्रेड्स बनाते हैं और फिर सभी को एक साथ संयोजित करने और किसी विशेष क्रम में निष्पादित करने के लिए जॉइन () फ़ंक्शन का उपयोग करते हैं।

जब आप उपरोक्त कार्यक्रम चलाते हैं, तो परिणाम कुछ इस तरह दिखाई देगा।

निष्कर्ष

यह पायथन की सबसे आसान विशेषताओं में से एक है। इसे सही तरीके से उपयोग करके, आप अपनी संपूर्ण कोडिंग प्रक्रिया को बहुत आसान और कुशल बना सकते हैं। उपरोक्त लेख से हम आशा करते हैं कि आपने थ्रेडिंग की मूल बातें सीख ली हैं और दिन प्रतिदिन की प्रोग्रामिंग में इसका उपयोग करना जारी रखेंगे।

तो यह है लोग मुझे उम्मीद है कि आपको यह लेख पसंद आया होगा।

अपने विभिन्न अनुप्रयोगों के साथ अजगर पर गहराई से ज्ञान प्राप्त करने के लिए, आप कर सकते हैं 24/7 समर्थन और आजीवन पहुंच के साथ लाइव ऑनलाइन प्रशिक्षण के लिए।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? इस लेख के टिप्पणी अनुभाग में उनका उल्लेख करें और हम आपके पास वापस आ जाएंगे।