डॉक्स से: http://docs.python.org/2/library/threadमुख्य धागे sys.exit() को कॉल करते समय अन्य धागे का क्या होता है?
जब मुख्य थ्रेड बाहर निकलता है, यह प्रणाली परिभाषित किया गया है अन्य धागे जीवित रहने या नहीं। मूल थ्रेड कार्यान्वयन का उपयोग करते हुए एसजीआई आईआरईएक्स पर, वे जीवित रहते हैं। अधिकांश अन्य प्रणालियों पर, वे निष्पादित किए बिना मारे गए हैं ... आखिरकार या ऑब्जेक्ट विनाशकों को निष्पादित करता है।
और यहाँ, डॉक्स में (http://docs.python.org/2/library/threading) यह कहते हैं:
एक धागा एक "डेमॉन सूत्र" के रूप में चिह्नित किया जा सकता है। इस ध्वज का महत्व यह है कि पूरे पायथन प्रोग्राम निकलता है जब केवल डेमॉन थ्रेड शेष होते हैं। प्रारंभिक मान बनाने के धागे से विरासत में मिला है।
आइए ही के बारे में गैर डेमॉन धागे यहाँ बात। चूंकि, पहला उद्धरण गैर-डिमन धागे के लिए कोई विशेष संदर्भ नहीं देता है, मुझे लगता है कि मुख्य धागा बाहर निकलने पर भी गैर-डिमन धागे को मारना चाहिए। हालांकि, दूसरा उद्धरण अन्यथा सुझाता है। और वास्तव में, जब मुख्य धागा निकलता है तो गैर-डिमन थ्रेड वास्तव में नहीं मारे जाते हैं। तो, यहां पहले उद्धरण का बिंदु क्या है? thread
और threading
:
लिखें कोड और इसे आज़माने –
यह प्रतीत होता है कि 'thread' मॉड्यूल डेमॉन धागे के रूप में सब कुछ संभालती है, जबकि' threading' "गैर डेमॉन" धागे की अवधारणा कहते हैं। –
@ user2799617: मैंने कोड लिखा था और निष्कर्ष पर आया था "जब मुख्य थ्रेड निकलता है तो गैर-डिमन थ्रेड वास्तव में नहीं मारे जाते हैं"।यही कारण है कि, मैं सोच रहा हूं कि पहला उद्धरण कब लागू होता है क्योंकि मेरी प्रणाली शायद उन "अधिकांश अन्य प्रणालियों" में से एक है: उबंटू 12.10 रनिंग पायथन 2.7 – gjain