मल्टीथ्रेडिंग पर मुझे मिली सबसे अच्छी पुस्तक "अभ्यास में जावा कंसुरेंसी" है। यह जावा थ्रेड समेकन पर बहुत अधिक ध्यान केंद्रित कर रहा है, और जब आप समेकन द्वारा पेश की गई समस्याओं और संभावनाओं को समझना शुरू करते हैं तो दोनों नम्र और रोमांचक होते हैं। कुछ साल पहले खरीदी गई प्रतिलिपि में कोडिंग में कुछ इरेटा था, हालांकि, जो पहले से ही मस्तिष्क-चुनौतीपूर्ण विषय को बढ़ाता है: यहां इरेटा देखें: http://jcip.net/errata.html।
हालांकि जावा डेवलपर्स के लिए डिज़ाइन किया गया है जो कि समेकन में शामिल होने की इच्छा रखते हैं (जिस तरह से किसी भी व्यक्ति ने कभी भी किसी भी प्रकार का जीयूआई इंटरफ़ेस इस्तेमाल किया है), मुझे यकीन है कि पुस्तक में उल्लिखित तकनीकी कठिनाइयों और सूक्ष्मताएं किसी भी कार्यान्वयन पर लागू होती हैं संगामिति।
वैसे, मुझे ज्योथन भी पसंद है और यह पुष्टि कर सकता है कि जावा में आप जो कुछ भी कर सकते हैं, वह आप ज्योथन में कर सकते हैं। हालांकि, एक चेतावनी है: समरूपता एसिंक्रोनस प्रोग्रामिंग (जीयूआई सहित) और/या प्रदर्शन के लिए हो सकती है। यदि उत्तरार्द्ध के लिए आपको कोई समस्या है, तो मेरी राय में: मेरे अनुभव में ज्योथन बराबर जावा प्रोग्राम की तुलना में लगभग 10 x धीमी गति से चलता है।
इसका क्या अर्थ है कि आपके अधिक मांग वाले ज्योथन मॉड्यूल को संख्या-क्रंचिंग कार्यों के लिए ज्योथन के अलावा कुछ और कॉल करना होगा। साथ ही, ज्योथन अब तक * पाइथन के मल्टीप्रोसेसिंग मॉड्यूल नहीं है, इसलिए इंटर-प्रोसेस संचार बाहर हैं, जब तक आप आरएमआई के डरावने क्षेत्र में प्रवेश नहीं करते। यदि आप वह विकल्प लेते हैं तो आप मुझसे अधिक पुरुष/महिला हैं। लेकिन सबकुछ ठीक है: कृपया http://www.jython.org पर "जेफॉन के लिए परिभाषित मार्गदर्शिका" देखें ... अध्याय 1 एक प्रकार का सीटी-स्टॉप परिचय है, और अध्याय 10 जावा और ज्योथन को एकीकृत करने के बारे में है (संकेत: यह बेहद आसान है)।
- दिलचस्प: ज्योथन साइट पर एक त्वरित झलक दिखाती है कि, सिर्फ 10 दिन पहले, 17/05/12, संस्करण 2.7 ए 1 जारी किया गया था ... एक "अल्फा" रिलीज। इसमें मल्टीप्रोसेसिंग मॉड्यूल होना चाहिए, जो पायथन 2.6 के साथ आया था। डब्ल्यूडी इसे जांचने के लिए दिलचस्प हो: यदि ऐसा है तो संभवतः यह आपको ज्योथन और सीपीथन प्रक्रियाओं को जोड़ने का रोमांचक विकल्प प्रदान करता है (बाद में अपडेट करें: दुख की बात यह है कि इस पल के लिए ऐसा लगता है कि ऐसा नहीं है - मॉड्यूल नाम "मल्टीप्रोसेसिंग" को पहचानने पर पहचाना नहीं गया था) ...
पुनश्च एक अंतिम शब्द: सबसे विशेषज्ञ हैं, जो इन चीजों के बारे में ज्यादा से ज्यादा मैं कहता हूं कि मूर के कानून Amdahl का कानून है, जो संक्षेप में इसका मतलब द्वारा importtance में अधिक्रमित किया जा रहा है पता है कि प्रोग्रामिंग स्थिर का चुनौतीपूर्ण चुनौती और स्केलेबल सच समवर्ती कार्यक्रम भविष्य में अपरिहार्य होंगे। वास्तव में कितना आसान सच (यानी धागा) चालाक कोड विश्लेषण उपकरण के उपयोग के साथ समेकन किया जा सकता है, मैं नहीं कह सकता लेकिन इस विषय में निवेश और समेकन द्वारा लगाए गए तर्क के आकर्षक, बौद्धिक नए विषयों शायद भुगतान करेंगे ... यदि आपको एक चुनौती पसंद है।
स्रोत
2012-05-27 10:46:29
यह एक अच्छा सवाल है, मैं ईमानदारी से जवाब नहीं जानता लेकिन मैंने दोनों के साथ बहुप्रचार किया है, इसलिए शायद एक बेहतर सवाल यह है: 'क्या मुझे पाइथन मल्टीप्रोसेसिंग या जावा के थ्रेडिंग का उपयोग करने की आवश्यकता है?' मुझे यकीन है कि यह सुनिश्चित करता है कि ज्योथन दोनों का मिश्रण है, इसलिए आपको यह सुनिश्चित नहीं है कि आपको किसके लिए उपयोग करना है। – Lostsoul
क्या आपका मतलब है जैप्टन, या ज्योथन? यह ओपन-एंडेड प्रश्न का प्रकार है जो एसओ, बीटीडब्ल्यू के लिए वास्तव में एक अच्छा फिट नहीं है। –
[इस सवाल के अनुसार (http://stackoverflow.com/questions/4227269/hidden-multithreading-bottlenecks-in-jython), जवाब हाँ है। मैं समझता हूं कि अजगर के माध्यम से पाइथन मल्टीथ्रेडिंग लाइब्रेरी या जावा समवर्ती समर्थन तक पहुंच बनाना संभव है। –