私は、サーバーに多くのTCP接続を行うマルチスレッドPythonアプリケーションを書いています。各接続は別々のスレッドで行われます。時にはスレッドが長時間ハングしてしまい、私が欲しくないことがあります。どのようにして、一定の時間が経過した後にスレッドを強制終了させることができますか?メインスレッドから、子スレッドが自分自身を殺したと判断する方法はありますか?Python:タイムアウト後にスレッドを強制終了させるにはどうすればよいですか?
可能であれば、これを行う方法を示すコードスニペットをいただければ幸いです。ありがとう。
更新 システムは、Ubuntuの9時10
ハングアップとはどういう意味ですか?ハングするネットワーク操作の場合は、タイムアウトを設定できませんか? –
はいネットワークのタイムアウトを設定できますが、それは他のいくつかの問題を引き起こします。昨日から私の質問を参照してください。タイムアウトのないこのメソッドは、ほとんどのホストでうまく動作します。私はスレッドを自分自身を殺す方法を知りたいだけです。 – VacuumTube
threading.Timerについて読む "指定した時間が経過した後に関数を実行するスレッド。" http://docs.python.org/library/threading.html#timer-objects例えば。スレッドを閉じる関数を呼び出すことができますか? –