如何在Python中设置SocketServer的超时时间?
我想用 server.get_request()
来接收请求,但我希望它在500毫秒后超时。这样做对吗?好像不太管用……谢谢。
class UDPServer(SocketServer.BaseRequestHandler):
timeout = .500
if __name__ == "__main__":
server = SocketServer.UDPServer(('localhost', '12345'), UDPServer)
server.get_request()
1 个回答
3
我觉得这里有几个地方不太对:
- 从
SocketServer.BaseRequestHandler
继承的类应该是MyUDPServerHandler
或者其他名字,而不应该是内置的UDPServer
类。 - 应该是
server = SocketServer.UDPServer(('localhost', '12345'), MyUDPServerhandler)
这样写。 - 然后可能还需要设置
server.timeout = .500
,并定义一个handle_timeout()
方法。