我尝试了下面的代码,但没有成功。基本上,我需要一种检测客户端断开连接的方法。我想避免使用繁琐的心跳类型系统。有没有办法检测套接字何时不再打开(无论是客户端已断开连接还是被中断等)?
class ThreadedTCPRequestHandler(SocketServer.StreamRequestHandler):
def handle(self):
while True:
self.data = self.rfile.readline().strip()
if not self.data:
print 'Client closed connection'
break
我认为这个方法应该可行,但实际上好像不行(即使尝试去掉strip()也是如此)。有人有什么想法吗?