मैं लिनक्स/केडीई में एक नई परियोजना के लिए आईपीसी तंत्र के रूप में D-Bus का उपयोग शुरू कर रहा हूं। और मैंने पाया है कि दस्तावेज़ीकरण वास्तव में समरूपता को बिल्कुल संबोधित नहीं करता है। डी-बस सेवाओं को विभिन्न ग्राहकों से आने वाली कई समवर्ती कॉलों से निपटने की उम्मीद कैसे की जाती है? थ्रेडिंग मॉडल क्या है? क्या एक सेवा यह मान सकती है कि यह एकल-थ्रेडेड है और डी-बस अपने आप अनुरोधों को कतारबद्ध करेगा?डी-बस थ्रेडिंग मॉडल
उत्तर
प्रोटोकॉल के रूप में, डी-बस थ्रेडिंग को संबोधित नहीं करता है।
डी-बस कनेक्शन संदेश क्रमशः प्राप्त करते हैं। प्रोटोकॉल स्तर पर, संदेश का जवाब एसिंक्रोनस होता है: यानी प्रेषक को अधिक संदेश भेजने से पहले जवाबों का इंतजार नहीं करना पड़ता है।
सिद्धांत रूप में एक डी-बस कार्यान्वयन एक साथ सेवा कार्यान्वयन के लिए संदेशों को प्रेषित कर सकता है, मुझे ऐसा करने वाले किसी भी व्यक्ति के बारे में पता नहीं है।
आमतौर पर, डी-बस कार्यान्वयन (या "बाध्यकारी", यदि आप करेंगे) सेवा को प्रत्येक विधि (या यहां तक कि प्रत्येक विधि कॉल के लिए) का निर्णय लेने की अनुमति देता है चाहे आने वाली विधि कॉल को सिंक्रनाइज़ या असीमित रूप से प्रतिसाद दें। इसका विवरण आपके द्वारा उपयोग किए जा रहे विशेष कार्यान्वयन तक है।
यदि आप विधि कॉल को अतुल्यकालिक रूप से प्रतिसाद दे रहे हैं, तो आपका सेवा कार्यान्वयन यह सुनिश्चित करने के लिए ज़िम्मेदार है कि एकाधिक प्रतिक्रिया लंबित होने पर कोई भी राज्य सुसंगत रहता है। यदि आप हमेशा समकालिक रूप से प्रतिक्रिया देते हैं, तो आप जानते हैं कि आप एक समय में केवल एक विधि कॉल से निपट रहे हैं।
- 1. जावा सर्वलेट थ्रेडिंग मॉडल
- 2. ब्लैकबेरी थ्रेडिंग मॉडल
- 3. ओएसजीआई थ्रेडिंग मॉडल
- 4. हास्केल बनाम पायथन थ्रेडिंग मॉडल
- 5. थ्रेडिंग
- 6. थ्रेडिंग
- 7. .NET थ्रेडिंग मॉडल और एप्लिकेशन। डॉवेट्स बनाम थ्रेड। नींद
- 8. पंजीकरण मुफ्त COM, थ्रेडिंग मॉडल, MT.exe और * आरजीएस स्क्रिप्ट
- 9. मल्टी थ्रेडिंग
- 10. यूआई थ्रेडिंग व्यूमोडल्स
- 11. सी थ्रेडिंग?
- 12. बेसिक थ्रेडिंग
- 13. सरल थ्रेडिंग
- 14. मल्टी थ्रेडिंग
- 15. .NET थ्रेडिंग
- 16. बहु-थ्रेडिंग
- 17. डब्ल्यूसीएफ थ्रेडिंग - गैर-उत्तरदायी यूआई
- 18. एशैच और मल्टी थ्रेडिंग
- 19. विंडोज थ्रेडिंग रुको विधि
- 20. थ्रेडिंग और लैम्ब्डा एक्सप्रेशन
- 21. एकाधिक एसिंक कॉल थ्रेडिंग
- 22. पायथन थ्रेडिंग और जीआईएल
- 23. मल्टीप्रोसेसिंग से थ्रेडिंग
- 24. सी # बहु थ्रेडिंग
- 25. थ्रेडिंग: यूआई उत्तरदायी
- 26. डब्ल्यूसीएफ सेवा और थ्रेडिंग
- 27. मल्टी थ्रेडिंग बनाम ThreadPoolExecutor
- 28. प्रदर्शन काउंटर और थ्रेडिंग
- 29. मल्टी-थ्रेडिंग लॉक परीक्षण
- 30. थ्रेडिंग और स्थिर तरीकों
धन्यवाद। यह Qt बाध्यकारी का उपयोग कर कुबंटू में मैंने जो देखा उसके साथ संगत है। अगर मैंने अपनी रिमोट सर्विस विधि (स्लॉट) में ब्रेकपॉइंट सेट किया है और फिर इसे दो क्लाइंट से बुलाया है, तो दूसरा क्लाइंट पूरी तरह अवरुद्ध था जब तक कि मेरा कोड पहले संदेश को संसाधित नहीं कर लेता। लेकिन मुझे यकीन नहीं था कि क्या मैं इस पर भरोसा कर सकता हूं। –