मैं किसी भी परियोजना या कुछ भी posix या sysv संदेश कतार का उपयोग कभी नहीं देखा है?आपने sysv/posix संदेश कतारों का उपयोग किस लिए किया है? और उत्सुक जा रहा है, क्या समस्या है या परियोजनाओं है आप लोग उनके लिए इस्तेमाल किया -
उत्तर
मेरे पास आदेशों की एक श्रृंखला थी जिसे क्रम में निष्पादित करने की आवश्यकता थी, लेकिन मुख्य कार्यक्रम प्रवाह उनके पूरा होने पर निर्भर नहीं था, इसलिए मैंने उन्हें कतारबद्ध कर दिया और उन्हें सिस्टम वी संदेश कतार के माध्यम से स्वतंत्र रूप से निष्पादित करने के लिए दूसरी प्रक्रिया में पारित किया मुख्य कार्यक्रम का। चूंकि संदेश कतार एक असीमित संचार प्रोटोकॉल प्रदान करते हैं, इसलिए वे इस कार्य के लिए उपयुक्त थे।
ईमानदारी से कहूं तो मैं सिस्टम वी संदेश कतार इस्तेमाल किया क्योंकि मैं उन्हें पहले कभी उपयोग नहीं किया था और मैं करना चाहता था। मुझे यकीन है कि अन्य आईपीसी विधियां भी उपयोग की जा सकती हैं।
थोड़ा समय के बाद से मैं किसी भी असली VxWorks प्रोग्रामिंग किया है हो गया है, लेकिन आप यह भी VxWorks अनुप्रयोगों में इस्तेमाल संदेश कतार पा सकते हैं। VxWorks Application Programmer's Guide (Google खोज) के अनुसार, यह एक CPU के भीतर प्राथमिक intertask संचार तंत्र संदेश कतार है। VxWorks दो संदेश कतार subroutine पुस्तकालयों (POSIX और VxWorks) का उपयोग करता है।
मैं एक बार एक पाठ-मोड आई/ओ जनरेटर उपयोगिता है कि वास्तविक आई/ओ काम करने के लिए यूआई और कार्यकर्ता धागे के एक नंबर को अद्यतन करने के आरोप में एक धागा था लिखा था। जब एक कार्यकर्ता थ्रेड ने I/O पूरा किया, तो उसने UI थ्रेड पर एक अपडेट संदेश भेजा। मैंने एक पॉज़िक्स संदेश कतार का उपयोग करके इस संदेश प्रणाली को लागू किया।
क्यों इस तरह इसे लागू? यह उस समय एक अच्छा विचार की तरह लग रहा था, और मैं उत्सुक था कि उन्होंने कैसे काम किया। मैंने सोचा कि मैं समस्या को हल कर सकता हूं और एक ही समय में कुछ सीख सकता हूं। मैंने कई अलग-अलग तकनीकों का उपयोग किया था, और मुझे नहीं लगता कि मैंने इस तकनीक को चुना क्यों कोई गहरा कारण था। मुझे बाद में इसका एहसास नहीं हुआ, लेकिन मुझे खुशी है कि मैंने एक पॉज़िक्स कतार का उपयोग किया था जब मुझे उपयोगिता को किसी अन्य सिस्टम में बंद करना था (यह भी पॉज़िक्स अनुपालन था, इसलिए मुझे बाहरी पुस्तकालयों को बंद करने के बारे में चिंता करने की ज़रूरत नहीं थी चलाने के लिए ऐप)।
तुम्हें यकीन के लिए भारतीय दंड संहिता के लिए उपयोग कर सकते हैं क्योंकि यह एक भारतीय दंड संहिता तंत्र है। इस तंत्र के साथ आप मल्टी-प्रोसेस इवेंट प्रोसेसिंग एप्लिकेशन लिख सकते हैं जिसमें सभी एप्लिकेशन कतार का उपयोग कर रहे हैं और जिनमें से प्रत्येक एक विशेष प्रकार के संदेश (एक विशेष घटना होने के लिए) की प्रतीक्षा कर रहे हैं। जब संदेश आता है कि प्रक्रिया संदेश लेती है, प्रक्रिया करती है और परिणाम को कतार में वापस रखती है ताकि अन्य प्रक्रिया इसका उपयोग कर सके।
एक बार मैंने संदेश कतारों का उपयोग करके ऐसा एप्लिकेशन लिखा था। यह काम करना बहुत आसान है और इसे सेफफोर्स जैसे इंटर-प्रोसेस सिंक्रनाइज़ेशन तंत्र की आवश्यकता नहीं है। आप मेमोरी मैप की गई फ़ाइलों की साझा मेमोरी के स्थान पर भी इसका उपयोग कर सकते हैं, ऐसी परिस्थितियों में जिसमें आपको केवल एक संरचना या किसी अन्य प्रकार के पैक किए गए डेटा को अन्य प्रक्रियाओं में भेजना है, संदेश कतार किसी अन्य आईपीसी तंत्र की तुलना में उपयोग करना कहीं अधिक आसान है।
This book में लिनक्स में संदेश कतार और अन्य आईपीसी तंत्र के बारे में जानने के लिए आवश्यक सभी जानकारी शामिल है।
- 1. SimpleHttpConnectionManager का गलत इस्तेमाल किया जा रहा है
- 2. आपने किस उद्देश्य के लिए टी 4 का उपयोग किया है?
- 3. जीआईएस के लिए इस्तेमाल किया जा सकता है?
- 4. अधिक एसक्यूएल लिखने से बचने के लिए आपने किस कोडिंग चाल का उपयोग किया है?
- 5. आपने ऑब्जेक्ट.क्लोन() के लिए क्या उपयोग किया है?
- 6. क्या आपने मैकेनिकल तुर्क का दिलचस्प उपयोग किया है?
- 7. किस उद्देश्य के लिए Django का उपयोग किया जाता है?
- 8. आज के लिए लिस्प का क्या उपयोग किया जाता है और आपको लगता है कि यह कहां जा रहा है?
- 9. क्या कोई बता सकता है कि किस संदेश दलाल के लिए उपयोग किया जाता है?
- 10. क्या आपने सी ++ 0x का उपयोग शुरू किया है?
- 11. क्या आपने सी ++ दुभाषियों का उपयोग किया है (संकलक नहीं)?
- 12. Google Analytics '__utm.gif का उपयोग किस लिए किया जाता है?
- 13. क्या आपने कभी ngen.exe का उपयोग किया है?
- 14. क्या मुझे हैक किया जा रहा है?
- 15. इटरबल इंटरफ़ेस का उपयोग किस लिए किया जाता है?
- 16. जावास्क्रिप्ट पैकेज कीवर्ड का उपयोग किस लिए किया जाता है?
- 17. क्या पारित किया जा रहा है?
- 18. के लिए इस्तेमाल किया गया .link_to_grails_plugins फ़ोल्डर क्या है?
- 19. आपने क्षेत्र में गतिशील प्रोग्रामिंग का उपयोग कब किया है?
- 20. .NET: ऑब्जेक्ट हेडर का उपयोग किस लिए किया जाता है?
- 21. pexpect टाइमआउट का उपयोग नहीं किया जा रहा है, केवल 30 का डिफ़ॉल्ट उपयोग किया जा रहा है
- 22. बाहरी निर्भरताओं को कैसे प्रबंधित किया जा रहा है जिन्हें लगातार संशोधित किया जा रहा है
- 23. @JsonProperty प्रॉपर्टी का उपयोग कब किया जाता है और इसके लिए क्या उपयोग किया जाता है?
- 24. सॉफ्टवेयर परियोजनाओं के लिए कितनी और योजना का उपयोग किया जाता है?
- 25. क्या विभिन्न परियोजनाओं में एएसपी.नेट एमवीसी व्यू का पुन: उपयोग किया जा सकता है?
- 26. क्या आपने मंटिस और सबवर्जन को एकीकृत किया है?
- 27. जापानी पाठ को संभालने के लिए किस ल्यूसीन विश्लेषक का उपयोग किया जा सकता है?
- 28. वास्तविक MAVEN_OPTIONS का उपयोग कैसे किया जा रहा है?
- 29. क्या एचटीएमएल 5 कैनवास में क्वाड्रिस का कोई उदाहरण इस्तेमाल किया जा रहा है?
- 30. तत्काल क्या किया जा सकता है?
आपने समझाया नहीं है कि कोई भी सॉकेट के बजाय इन क्रूर पुरानी चीज़ों को कभी क्यों नहीं चाहेगा। – tchrist
वैसे वास्तव में संदेश कतार आपको एक दूसरे से कई अनुप्रयोगों को अलग करने और एक संदेश ब्रोकर आर्किटेक्चर बनाने की अनुमति देता है जो विभिन्न घटकों को एक दूसरे से अलग करने की अनुमति देता है; और आपको एक आरपीसी जैसी तंत्र को लागू करने की अनुमति देता है, ऐसे आर्किटेक्चर को लागू करने के लिए सॉकेट को परिवहन तंत्र के रूप में उपयोग किया जा सकता है लेकिन इसके लिए आपको उच्च स्तरीय प्रोटोकॉल की आवश्यकता होगी। संदेश कतारों के बारे में अधिक पढ़ने के लिए http://www.zeromq.org देखें – gst