Sockets Twisted reactor.listenTCP间歇性无法正确连接
我正在linux上使用reactor.listenTCP运行TCP服务器 所有这些都可以正常工作数小时(或数天),然后发生一些事情,客户端可以连接,但服务器会立即断开它们的连接 我的协议实现中没有命令断开连接的内容。 客户端实现中没有任何东西会导致这种断开连接 服务器使用sendLine(数据)向在用户列表中找到的所有用户间歇发送一些数据 我想知道当客户端断开连接时,我是否应该执行一些操作,因为我错过了amd。这会导致套接字问题Sockets Twisted reactor.listenTCP间歇性无法正确连接,sockets,twisted,twisted.internet,Sockets,Twisted,Twisted.internet,我正在linux上使用reactor.listenTCP运行TCP服务器 所有这些都可以正常工作数小时(或数天),然后发生一些事情,客户端可以连接,但服务器会立即断开它们的连接 我的协议实现中没有命令断开连接的内容。 客户端实现中没有任何东西会导致这种断开连接 服务器使用sendLine(数据)向在用户列表中找到的所有用户间歇发送一些数据 我想知道当客户端断开连接时,我是否应该执行一些操作,因为我错过了amd。这会导致套接字问题 class MsgHandler(Protocol): d
class MsgHandler(Protocol):
def __init__(self, factory):
self.factory = factory
def connectionMade(self):
self.factory.users.append(self)
def connectionLost(self, reason):
self.factory.users.remove(self)
def dataReceived(self, data):
pass
class outputTcpServerFactory(Factory):
def __init__(self, users):
self.users = users
def buildProtocol(self, addr):
return MsgHandler(self)
class Mainloop(object):
def __init__(self):
self.users = []
s = reactor.listenTCP(port, outputTcpServerFactory(self.users))
reactor.run()
--->mainLoop类中的其他地方是定期运行的代码:
for client in self.users:
client.sendLine(data)
您应该始终这样做,以便可以看到应用程序遇到的未处理异常。这些通常可以清楚地说明某些东西损坏的原因。请附上一个简单、完整、正确的示例来说明您的问题。这个不完整。感谢Jean Paul-我已经启用了日志记录,并将看到它的结果