2012-01-29 28 views
5

私はマルチプロセッシングを利用するpythonスクリプトを持っています。私はEclipseでスクリプトをデバッグするのが好きですが、マルチプロセッシングでは、終了後に常に生成された子プロセスを手動で削除する必要があります。スクリプトでEclipseの終了アクションを捕まえることができますので、クリーンアップできますか?Eclipse pydevから実行終了を取得する方法は?

+0

これを解決できましたか?どのような回避策ですか? – gsagrawal

答えて

3

Eclipseの終了をキャッチすることで、デバッグ中に「終了」ボタンを押したというイベントをキャッチすることを意味しますか?もしそうなら、私はあなたが捕まえることができる例外やイベントはないと思います。

ここでは、どちらもうまくいきませんでした。 1. SIGTERM、SIGNTEAL、およびSIGINTの信号ハンドラを追加しましたが、運がありません。 2. atexitモジュールを試してください。通常のプログラム終了のみで動作します。

+2

これがうまくいかない理由は、eclipseがSIGTERMの代わりにSIGKILLを送信することを主張するからです.SIGTERMは、あなたのアプリケーションを処理する機会を与えずにアプリケーションを終了させます。http://stackoverflow.com/questions/677531/is-itも参照してください。 - 使用可能な代わりに使用可能なシグミック –

関連する問題