2010-10-10 226 views
2

我想使用server.get_request()来接收请求,但我希望它在500毫秒后超时。它是否正确?似乎没有工作......谢谢。如何在Python中设置SocketServer的超时时间?

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

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

回答

3

我觉得有一些地方错了:

  1. SocketServer.BaseRequestHandler派生的类应MyUDPServerHandler或别的东西,但不应该UDPServer这是一个内置类的SocketServer
  2. 它应该是server = SocketServer.UDPServer(('localhost', '12345'), MyUDPServerhandler)
  3. 那么也许它应该是server.timeout = .500。并定义一个handle_timeout()方法
+0

你是对的命名约定。我忽略了这一点。令人惊讶的是,这没有造成任何麻烦。但我知道,这只是一个变量,可以通过点运算符访问。我不明白如何设置它。谢谢。 – 2010-10-10 06:30:18

相关问题