我正在用Twisted创建TCP客户端套接字。我需要检查connectionMade方法中循环间隔中的连接状态。在
from twisted.internet import reactor, protocol
class ClientProtocol(protocol.Protocol):
def connectionMade(self):
while not thread_obj.stopped.wait(10):
print ('ping')
self.transport.write(b'test') # Byte value
对于check connection losing,我手动断开网络,然后检查了一些变量,如下所示:
^{pr2}$但是断开网络后,任何变量值都没有改变:(
我的问题是:当连接丢失时,将设置哪些变量?我的意思是我如何检查连接状态,如果是断开连接,如何重新连接?在
重写
connectionLost
方法以捕获断开连接。 to official docs编辑关于重新连接的信息: 重新连接大多是一个合乎逻辑的决定。您可能需要在“connectionLost”和“reconnect”之间添加逻辑。在
不管怎样, 您可以使用ReconnectingClientFactory来获得更好的代码。 ps:在重新连接时使用工厂模式是保持代码干净和智能的最佳方法。在
相关问题 更多 >
编程相关推荐