मैं एक जटिल अजगर (2.7.3) स्क्रिप्ट जो के माध्यम सेक्या एक सॉकेट त्रुटि के लिए कारण हो सकता है "[errno 9] बुरा फ़ाइल वर्णनकर्ता"
self.socket.close()
# doing something else
self.socket.connect((host, port))
लेकिन सभी एक गर्तिका कनेक्शन खोलने की कोशिश कर रहा है
error: [Errno 9] Bad file descriptor
host:port
के रूप में मैं मैन्युअल nc host port
के साथ इस को सत्यापित किया है कनेक्शन स्वीकार करता है: मैं निम्नलिखित सॉकेट त्रुटि है। तो दिए गए बंदरगाह से कनेक्शन खोलने के लिए मुझे यह त्रुटि क्यों मिल सकती है, जो वास्तव में काम करता है?
मैं पूरी स्क्रिप्ट पोस्ट नहीं कर सकता और नहीं करूँगा क्योंकि यह इस प्रश्न के लिए बहुत जटिल और अप्रिय है। मैं सिर्फ इस त्रुटि के सभी संभावित कारणों को जानना चाहता हूं, और उन्हें कैसे जांचूं और उन्हें ठीक करूँ।
'socket.close()' के लिए दस्तावेज़ पढ़ें। एक बार जब आप इसे बंद कर लेंगे तो आप इसे किसी भी ऑपरेशन ('कनेक्ट' सहित) में पुन: उपयोग नहीं कर सकते। इसे 'socket.socket' पर कॉल के साथ पुन: प्रारंभ करने की आवश्यकता है। – Thomas