1

複数のクライアントでサーバーを作成しています。クライアントが起動したとき、サーバーはまだ機能していない可能性があります。したがって、areactor.connectTCPは失敗する可能性があります(受信側がない)。現在、私はこれをループすることで解決していreactor.runます。

  1. サーバーに接続する
  2. react.run
  3. 失敗した場合は、繰り返します

私はこれがねじれた状態でそれを行う方法ではないことを理解しています。どうすればそれができますか?

4

1 に答える 1

2

connectionLostたとえば、ハンドラー内でいつでも再接続を試みることができます。

from twisted.internet.protocol import ClientFactory

class EchoClientFactory(ClientFactory):
    def clientConnectionLost(self, connector, reason):
        connector.connect()

ビルトインもありReconnectingClientFactoryます。参照:再接続時のこの宣伝文句。

于 2011-02-21T17:47:42.167 に答える