Twisted Pythonで書かれたかなり集中的なチャットソケットサーバーを持っています。インターネットとの接続を開始します。クライアントとの通信。Twisted Python - プロトコルインスタンスが完全に割り当て解除されることを確認してください
クライアントが切断された後、プロトコルインスタンスが完全に消滅するようにするにはどうすればよいですか?
私はconnectionLostという名前の関数を持っています。これは、クライアントが切断されたときに起動され、そこにあるすべてのアクティビティを停止しようとしますが、リアクション用のもの(twisted.wordsインスタンスなど)は、
これを処理するにはどうすればよいでしょうか?
ありがとうございます!
この質問にお答えしたいと思いますが、説明が必要です。 "twisted.words"インスタンスのようなものはありません。 - twisted.wordsはパッケージであり、クラスではありません。あなたはまだ特定のインスタンスは信じていますか?どのような具体的な振る舞いを見ていると、あなたのプロトコルインスタンスが長く生きていると信じられるでしょうか?ログメッセージ、ネットワークトラフィック、または他のオブジェクト上の変更された状態などが表示されますか?簡単に言えば、オブジェクトをPythonで強制的に解放することはできません。すべての参照を削除するだけで済みます。 – Glyph
ありがとうございます。私はそれまでに経験していたものをdesrcibeするのに全力を尽くしますが、このソケットサービスをもう使用しないので詳細が正確ではないかもしれません。 それぞれ新しいTCPソケット接続が、ジャバーサーバーへの接続を管理していたXMPPClientFactory(twisted.words.protocols.jabber.client.XMPPClientFactory)インスタンスを開始しました。プロトコルインスタンスの割り当てが解除され、参照されたクライアントオブジェクトがTCP実際にはクライアントジャバーオブジェクトが破壊されていないように見えますが、クライアントは切断されます。 これが問題をより詳しく説明している場合はお知らせください。ありがとう! –