मेरे पास एक सर्वर है जो ग्राहकों से कनेक्शन अनुरोध प्राप्त करता है। यह सर्वर एसिंक्रोनस Socket.BeginReceive
और Socket.EndReceive
विधि का उपयोग करता है। यह कोड here कोड के समान ही है।सी #: सॉकेट से पहले मैं सॉकेट कैसे समाप्त करूं? बेगिन रिसीव वापस कॉल करता है?
मेरे मामले में, Socket.BeginReceive
पर कॉल करने के बाद मुझे एक टाइमआउट की आवश्यकता है जैसे कि क्लाइंट कनेक्शन पर लटकता है लेकिन निश्चित समय के लिए किसी भी डेटा को प्रेषित नहीं करता है, मुझे कनेक्शन को समाप्त करने की आवश्यकता है।
- मैं इस परिदृश्य में कनेक्शन को समाप्त करने के बारे में कैसे जा सकता हूं?
- टाइमर कोडिंग का सबसे अच्छा तरीका क्या है?
क्या आपका मतलब है कि सॉकेट की करीबी विधि के बाद कॉलबैक विधि अभी भी चलती है? – Lopper
यदि कोई BeginReceive() लंबित है: हाँ। यह * हमेशा * को EndReceive() कॉल के साथ जोड़ा जाना चाहिए। आप नहीं कर सकते कॉलबैक से बचें। –
धन्यवाद nobugz! :) – Lopper