相关文章推荐
坚韧的充值卡  ·  将JSON字符串转换为HashMap-腾讯云 ...·  1 年前    · 
发财的煎饼果子  ·  计算两个数组对应元素的差值 Java ...·  1 年前    · 
完美的消炎药  ·  maven - Gson ...·  1 年前    · 
不拘小节的作业本  ·  js滚动到位置触发_滚动到位置触发js_js ...·  2 年前    · 
追风的打火机  ·  RecyclerView 部件和功能 - ...·  2 年前    · 
Code  ›  Errno 9: Bad file de开发者社区
https://cloud.tencent.com/developer/article/1565917
谈吐大方的跑步鞋
10 月前
py3study

Errno 9: Bad file de

前往小程序,Get 更优 阅读体验!
立即前往
腾讯云
开发者社区
文档 建议反馈 控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
py3study
首页
学习
活动
专区
工具
TVP 最新优惠活动
返回腾讯云官网
社区首页 > 专栏 > Errno 9: Bad file de

Errno 9: Bad file de

作者头像
py3study
发布 于 2020-01-06 16:51:37
2.6K 0
发布 于 2020-01-06 16:51:37
举报
文章被收录于专栏: python3 python3

写了一个循环检测端口的程序,循环的次数多了,会报Errno 9: Bad file descriptor in python socket错误。程序如下:

代码语言: javascript
复制
def Scan_port(host,port):
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    #socket.setdefaulttimeout(10)
    s.settimeout(10)
    t = 1
    while 1:
            s.connect((host,port))
            s.close()
            break
        except socket.error, e:
            s.close()
            if t > 3:
                print e
                break
            else:
                t = t + 1
                time.sleep(1)

socket连接超时时间为10s,超时之后重试3次,3次依然连接不到或是超时,则抛错。这个函数加入到多线程,多个主机时就会报Errno 9: Bad file descriptor in python socket错误。查找了材料,都说是s.close()在循环里面是主线问题的主要原因,不管s.close()在循环中的那个位置都会出现这个错误。后修改了这段代码如下:

代码语言: javascript
复制
def Scan_port(host,port):
    t = 1
    while 1:
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        #socket.setdefaulttimeout(10)
        s.settimeout(10)
                s.connect((host,port))
                s.close()
                break
            except socket.error, e:
                s.close()
                if t > 3:
 
推荐文章
坚韧的充值卡  ·  将JSON字符串转换为HashMap-腾讯云开发者社区-腾讯云
1 年前
发财的煎饼果子  ·  计算两个数组对应元素的差值 Java 取两个数组对象差集_mob6454cc70219b的技术博客_51CTO博客
1 年前
完美的消炎药  ·  maven - Gson dependency - which repository? - Stack Overflow
1 年前
不拘小节的作业本  ·  js滚动到位置触发_滚动到位置触发js_js滚动到指定位置触发 - 腾讯云开发者社区 - 腾讯云
2 年前
追风的打火机  ·  RecyclerView 部件和功能 - Xamarin | Microsoft Learn
2 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号