गैर-अवरुद्ध टीसीपी/आईपी सॉकेट चैनल और एनआईओ में चयनकर्ता मुझे कई टीसीपी/आईपी कनेक्शनों को छोटे धागे के साथ संभालने में मदद करता है। लेकिन यूडीपी डेटाग्राम चैनलों के बारे में कैसे? (मुझे यह स्वीकार करना होगा कि मैं यूडीपी से बहुत परिचित नहीं हूं।)जावा में यूडीपी I/O अवरुद्ध करने वाले गैर-अवरुद्ध यूडीपी I/O
यूडीपी भेजना ऑपरेशन ब्लॉक करने के लिए प्रतीत नहीं होता है, भले ही डेटाग्राम चैनल ब्लॉकिंग मोड में काम नहीं कर रहा हो। क्या वास्तव में ऐसा कोई मामला है जहां संकुचन या कुछ समान होने के कारण डेटाग्राम सॉकेट.send (डेटाग्राम पैकेट) ब्लॉक? अगर ऐसा कोई मामला है और उत्पादन वातावरण में संभावित मामले क्या हैं तो मैं वास्तव में उत्सुक हूं।
यदि डेटाग्राम सॉकेट.send (डेटाग्राम पैकेट) वास्तव में अवरुद्ध नहीं होता है और मैं एक कनेक्टेड डेटाग्राम सॉकेट का उपयोग नहीं कर रहा हूं और केवल एक बंदरगाह से बांधता हूं, तो डेटाग्राम चैनल और चयनकर्ता के साथ गैर-अवरोधन मोड का उपयोग करने का कोई फायदा नहीं है?
क्या होगा यदि कर्नेल बफर बहुत तेजी से यूडीपी सॉकेट पर लिखता है? – trustin
आपका (उपयोगकर्ता-स्तर) लिखना तब तक अवरुद्ध होगा जब तक कि कर्नेल फ़्लश नहीं करता है कि सॉकेट बफर भेजते हैं। – JLR
तो ब्लॉकिंग और गैर-अवरुद्ध यूडीपी सॉकेट के बीच स्पष्ट अंतर है, बस ब्लॉकिंग और गैर-अवरुद्ध टीसीपी सॉकेट के बीच अंतर की तरह। मैंने एक साधारण पीओसी क्लाइंट लिखा और मैंने पुष्टि की कि गैर-अवरुद्ध यूडीपी चैनल के प्रेषण() अक्सर 0 लौटाते हैं, जबकि किसी को अवरुद्ध करते हुए 0 कभी नहीं लौटाता है। धन्यवाद! – trustin