error: [Errno 9] Bad file descriptor

来源:3-3 socket非阻塞模块2

zhouxiaojie1994

2018-09-18 22:57

按照代码编写,服务器端可以接收客户端数据,但是服务器端报错如下:

Traceback (most recent call last):

----------------------------------------

  File "D:\Coding\Python\lib\SocketServer.py", line 596, in process_request_thread

Exception happened during processing of request from ('127.0.0.1', 49579)

    self.finish_request(request, client_address)

----------------------------------------

  File "D:\Coding\Python\lib\SocketServer.py", line 331, in finish_request

    self.RequestHandlerClass(request, client_address, self)

  File "D:\Coding\Python\lib\SocketServer.py", line 652, in __init__

    self.handle()

  File "D:/Coding/code draft/socket_server_tcp_block.py", line 24, in handle

    data=conn.recv(1024)

  File "D:\Coding\Python\lib\socket.py", line 174, in _dummy

    raise error(EBADF, 'Bad file descriptor')

error: [Errno 9] Bad file descriptor

求解。

写回答 关注

2回答

  • qq_慕仔5278216
    2019-06-15 22:58:44

    我也遇到了这个问题,主要是你的client客户端的代码没有对应。send和recv要对应好

  • 藏锋入鞘丨3644858
    2018-09-28 16:48:11

    还是把代码贴出来吧,会不会是重复关闭socket导致的呢?

python运维-Socket网络编程

Socket网络编程入门

22579 学习 · 71 问题

查看课程

相似问题