2010-10-08 18 views
5

के बीच संवाद करने का सबसे तेज़ तरीका हम एक नया दृष्टि निरीक्षण प्रणाली अनुप्रयोग बना रहे हैं। वास्तविक निरीक्षण प्रणाली को कई कारणों से सी ++ होना चाहिए। उस प्रणाली के लिए हम बूस्ट & क्यूटी का उपयोग करेंगे।सी ++ और सी #

हमारे यूआई के लिए, हम वर्तमान में यूआई और एसक्यूएल आधारित रिपोर्ट के लिए WPF/C# का उपयोग कर देख रहे हैं। जटिल प्रणाली है कि यूआई को सी ++ निरीक्षण प्रणाली के रूप में एक ही बॉक्स पर स्थानीय दोनों को चलाने या किसी अन्य बॉक्स पर दूरस्थ रूप से चलाने के लिए है यदि निरीक्षण प्रणाली में कोई मॉनिटर या कीबोर्ड नहीं है।

हमारी चिंता यह है कि दोनों प्रणालियों के बीच डेटा स्थानांतरित करने का सबसे तेज़ तरीका क्या है? हम वर्तमान में serialization के लिए Google प्रोटोकॉल बफर का उपयोग कर सॉकेट आधारित सिस्टम देख रहे हैं। प्रोटोकॉल बफर सी ++ और सी # (jskeet/dotnet-protobufs) के लिए कोड उत्पन्न करेगा।

क्या किसी के पास कोई सुझाव/अनुभव है?

+0

टीसीपी चाहते हैं और Protobuf अच्छा लगता है। क्या आपके पास विशिष्ट चिंता या प्रश्न है? – dtb

+1

[प्रोटोबफ-नेट] (http://code.google.com/p/protobuf-net/) .NET के लिए पसंदीदा प्रोटोबफ कार्यान्वयन प्रतीत होता है। – dtb

+0

यह वह क्षेत्र है जहां मेरे पास बहुत अधिक अनुभव नहीं है। मैं सोच रहा था कि क्या बेहतर विकल्प थे। –

उत्तर

1

यदि आप वास्तव में अपने सी ++ निरीक्षण प्रणाली के साथ संवाद करने का सबसे तेज़ तरीका ढूंढ रहे हैं, तो मैं दोनों मामलों को लागू करूंगा। नामित पाइप का उपयोग करके एक स्थानीय इंटरफ़ेस (यहां देखें Interprocess communication for Windows in C# (.NET 2.0)) और उन स्थितियों के लिए Google प्रोटोकॉल बफर का उपयोग करके एक दूरस्थ इंटरफ़ेस जहां आपके निरीक्षण प्रणाली में कीबोर्ड और/या मॉनिटर संलग्न नहीं है। फिर यूआई पहले स्थानीय बॉक्स पर एक नामित पाइप खोलने का प्रयास करता है और यदि यह विफल रहता है तो उपयोगकर्ता को सॉकेट संचार के लिए एक दूरस्थ पता दर्ज करना होगा।

आशा है कि एक सा मदद करता है ...

+1

ग्रेट लिंक, धन्यवाद। एसओ प्रश्न 50153 पर नामित पाइप बाध्यकारी वर्ग (http://msdn.microsoft.com/en-us/library/system.servicemodel.netnamepipebinding.aspx) पर दिए गए लिंक का पालन करें। हालांकि, एमएसडीएन पेज पर एक टिप्पणी से वास्तव में दिलचस्प, ऐसा लगता है कि प्रति संदेश 16k से 20k की छिपी सीमा है। इससे हमें कोई समस्या हो सकती है क्योंकि हमारे पास कुछ संदेश ब्लॉक हैं जो इससे बड़े होने जा रहे हैं। –

0

मैं zeromq देखेंगे यदि आप वास्तव में सबसे तेजी से कम से कम लागत