2009-02-27 15 views
7

मैं SDL और OpenGL का उपयोग करके थ्रेडेड क्रॉस-प्लेटफ़ॉर्म एप्लिकेशन (लिनक्स/विंडोज) लिख रहा हूं, और नेटवर्किंग करने के लिए मैं SDL Net2 पर विचार कर रहा था क्योंकि यह SDL_Net के शीर्ष पर बैठता है।सी ++ (यूडीपी या टीसीपी) के लिए नेटवर्किंग फ्रेमवर्क?

हालांकि, मैंने पहले कभी सी/सी ++ में नेटवर्किंग नहीं की है, इसलिए मैं किसी भी उपलब्ध क्रॉस-प्लेटफ़ॉर्म तकनीकों से अपरिचित हूं। क्या एसडीएल_नेट या नेट 2 के साथ अनुभव वाला कोई भी व्यक्ति है जो एक अलग पुस्तकालय का सुझाव देगा?

+0

क्या आप इस बारे में थोड़ी अधिक जानकारी प्रदान कर सकते हैं कि आप किस प्रकार के आवेदन लिख रहे हैं? क्या आप वर्णन कर सकते हैं कि आप हस्तांतरण के लिए नेटवर्क परत का उपयोग कर क्या करेंगे? संयुक्त राष्ट्र/विश्वसनीय? बैंडविड्थ विचार, विलंबता सहनशीलता, आदि? –

उत्तर

6

बढ़ावा :: asio आपका मित्र है। यह क्रॉस प्लेटफॉर्म async io लाइब्रेरी है। नेटवर्क के लिए अच्छा है। बूस्ट साइट पर बहुत से नमूने के साथ। http://www.boost.org/

1

वहां फ्रेमवर्क का एक गुच्छा है (उदाहरण के लिए, Poco, ACE)। यह इस पर निर्भर करता है कि आप क्या तलाश रहे हैं। यदि आप ओएस परत पर कच्चे सॉकेट बनाना चाहते हैं और उन पर बाइट स्ट्रीम भेजना चाहते हैं, तो मैं Boost.Asio के साथ हर किसी के सुझाव के साथ जाऊंगा। यदि आप HTTP पर एक्सएमएल दस्तावेज भेजना चाहते हैं या ऐसा कुछ, तो कुछ अन्य विकल्पों की जांच करें।

1

जैसा कि पहले से ही कहा गया है, boost :: asio निश्चित रूप से अच्छी पसंद है।

अब कहा गया है, यह वास्तव में "कच्चे" नेटवर्किंग करना है। एक

आप एक वीडियो गेम बना रहे हैं, या नेटवर्क प्रदर्शन की तरह-वीडियो गेम सॉफ्टवेयर, शायद एक और अधिक उच्च स्तरीय और की तरह भारी recommanded इस मामले पुस्तकालय के लिए अनुकूलित RakNet पुस्तकालय होगा बेहतर विकल्प इस मामले में एक और विकल्प, यदि आप निम्न स्तर की यूडीपी आधारित लाइब्रेरी चाहते हैं, ENet आपकी आवश्यकताओं के अनुरूप हो सकता है।

संबंधित मुद्दे