Socket SO_RCVTIMEO Timeout is double the set value in C++/VC++ -
कृपया नीचे उदाहरण दिखाएं
int val = 120000; setsockopt (connSock, SOL_SOCKET, SO_RCVTIMEO, (चार *) & amp; वैल, sizeof (int)); मैं टाइमआउट प्राप्त करने में 120 सेकंड निर्धारित करता हूं लेकिन इसमें 240 सेकंड लगते हैं।
मुझे लगता है कि टाइमआउट सेट मान से दोगुना है।
यह कैसा है मुमकिन?
SO_RCVTIMEO और SO_SNDTIMEO सभी सॉकेट परिचालन पर काम नहीं करते हैं, आपको गैर-अवरोधन मोड का उपयोग करना चाहिए और चयन करें । व्यवहार भिन्न ऑपरेटिंग सिस्टम कॉन्फ़िगरेशन पर बदल सकता है मेरे सिस्टम पर SO_RCVTIMEO में सेट किए गए मूल्य के दो बार के बाद कनेक्ट समय सीमाएं एक त्वरित हैक जैसे SO_RCVTIMEO को सेट करने से पहले x / 2 कनेक्ट और x के बाद यह काम करता है, लेकिन उचित समाधान चयन का उपयोग कर रहा है। संदर्भ < / H1>
इस समस्या पर चर्चा (उत्तर के लिए टिप्पणियां पढ़ें):
-
इच्छित परिणाम प्राप्त करने के लिए चयन का उपयोग कैसे करें:
-
-
Comments
Post a Comment