4

私はそれに気づきましたos._exit(<num>)::

クリーンアップハンドラーを呼び出したり、stdioバッファーをフラッシュしたりせずに、ステータスnでプロセスを終了します。

そしてそれsys.exit()::

「only」は例外を発生させ、メインスレッドから呼び出された場合にのみプロセスを終了します

マルチプロセスアプリケーションを閉じるためのソリューションが必要です。これにより、すべてのプロセスが閉じられ(孤立したままになっているものはありません)、可能な限り最良の状態で終了します。

エキストラ:

から継承するクラスを作成することにより、Pythonマルチプロセッシングライブラリを使用してプロセスを作成していますmultiprocessing.Process

4

1 に答える 1

1

最終的に、すべてのプロセスに対してパイプを作成しました。次に、メインのプロセスがシャットダウンすると、すべての子プロセスにもシャットダウンする必要があるというメッセージを送信できます。

その作業を正しく行うには、子プロセスの「do ループ」に定期的なチェックを入れて、パイプにメッセージがあるかどうかを確認する必要があります。メッセージがある場合は、「今すぐ終了」するかどうかを確認します。メッセージ。

于 2012-12-05T18:27:00.103 に答える