ツイストで失われた接続を処理するために、次のコードを記述しました。
class Foo(LineReceiver):
def connectionLost(self, reason):
if reason.type != ConnectionLost:
reactor.stop()
def terminate(self):
self.transport.loseConnection()
このterminateメソッドは、いくつかの入出力プロトコルによって呼び出されます。メソッドを呼び出す代わりにCtrl-Cでプログラムを中断すると、「実行中のreactorを停止できません」というエラーを回避するためにメソッドreason.typeをテストする必要がありました。connectionLostterminate
このコードは機能しますが、ツイストで接続の終わりを管理するよりエレガントな方法があるのだろうか?ありがとう !