在Twisted中从反应器中删除客户端

时间:2010-11-10 15:59:47

标签: python tcp twisted

我有一个简单的TCP客户端,它使用以下方式连接到:

reactor.connectTCP(host, port, SomeClientFactory())

程序能够接收HUP信号以触发重新加载。我基本上想:

  1. 删除旧客户
  2. 重新加载配置
  3. 根据新配置创建新客户
  4. 然而,我似乎无法找到一种方法来实现这些要点中的第一点。有什么提示吗?

    由于

1 个答案:

答案 0 :(得分:2)

IReactorTCP.connectTCP会返回IConnector个提供商。正如您在definition of the IConnector interface上看到的那样,disconnect方法会执行您想要的操作。当然,您也可以使用协议实例的传输属性的loseConnection方法。如果您希望协议在实际断开连接之前进行任何类型的清理,后者会更合适,因为您可以在shutdown或{{1}等方法的末尾放置该工作并调用lostConnection。 }或quit在协议类上,然后调用它。