2010-02-16 13 views
9

लाभ (रों) (यदि हो तो) 2 Queues का उपयोग कर एक Pipe से अधिक प्रक्रियाओं के बीच संवाद करने के लिए की तरह होगा क्या?प्रक्रियाओं के बीच संवाद करते समय पाइपों पर कतारों का क्या फायदा है?

मैं multiprocessing पायथन मॉड्यूल का उपयोग करने की योजना बना रहा हूं।

उत्तर

11

बड़ी जीत यह है कि कतार प्रक्रिया-और थ्रेड-सुरक्षित हैं। पाइप्स नहीं हैं: यदि दो अलग-अलग प्रक्रियाएं पाइप के एक ही छोर से पढ़ने या लिखने की कोशिश करती हैं, तो बुरी चीजें होती हैं। क्यूई पाइप की तुलना में कुछ हद तक अमूर्तता के स्तर पर भी हैं, जो आपके विशिष्ट मामले में लाभ हो सकता है या नहीं।

+8

दरअसल; मल्टीप्रोसेसिंग कतार को तालाबों से संरक्षित पाइप्स के रूप में कार्यान्वित किया जाता है। –

+0

+1: उत्कृष्ट बिंदु। – jldupont

+0

+1 जोनाथन, यह बहुत अच्छा है। कुछ नया सीख लिया। –

4

कतार संदेश पकड़ते हैं और अगली बार कतार सक्रिय होने तक उन्हें बनाए रखता है और भले ही पाइप या कनेक्शन टूटा हुआ हो ... चाहे पाइप/कनेक्शन के साथ, संदेश के साथ अलविदा त्रुटि ...

उम्मीद है कि यह मदद करता है, सर्वश्रेष्ठ संबंध, टॉम।

+0

+1: अच्छा बिंदु। धन्यवाद! – jldupont

+0

@jldupont: कोई जांच नहीं! :) – t0mm13b