如何在Python中设置SocketServer的超时?

时间:2010-10-10 05:57:31

标签: python sockets udp

我想使用server.get_request()来接收请求,但我希望它在500毫秒后超时。它是否正确?似乎不起作用......谢谢。

class UDPServer(SocketServer.BaseRequestHandler):
    timeout = .500

if __name__ == "__main__":
    server = SocketServer.UDPServer(('localhost', '12345'), UDPServer)
    server.get_request()

1 个答案:

答案 0 :(得分:3)

我觉得有些地方错了:

  1. 派生自SocketServer.BaseRequestHandler的类应为MyUDPServerHandler或其他类,但不应为UDPServer,它是SocketServer中的内置类
  2. 应为server = SocketServer.UDPServer(('localhost', '12345'), MyUDPServerhandler)
  3. 那么也许它应该是server.timeout = .500。并定义handle_timeout()方法