私はプロセスがparent
プロセスであり、ssh
接続をそれぞれ監視するさまざまなchild
プロセスを生成するユースケースを持っています。このparent
プロセスは、サービスの一部として無限に実行する必要があります。しかし、これらのうちの1つが閉じられると、child
プロセスはzombie
プロセスになります。このようにして、ssh
接続が閉じられるたびに多くのプロセスが作成されています(zombie
)。ゾンビプロセスの削除
プロセスの数を可能な限り少なくしたいと考えています。私が知る限り、SIGTERM
またはSIGKILL
は、zombie
プロセスを削除します。 parent
プロセスが無限に実行されているので、zombie
プロセスは、parent
が終了するのを待って削除できません。
ゾンビプロセスを削除する方法はありますか?それとも私が間違って理解していること?
私はPythonを使用しています。私は同じことを試みた。 'join()'の代わりに 'os.waitpid(pid、os.WNOHANG)'に置き換えました。まだ「ゾンビ」プロセスが作成されています。私は何か間違っているのですか? – nidHi
waitpidの戻り値を確認しましたか? –
私はPythonで知らない。しかし、私は、os.waitpidに何らかの議論をして現状を知る必要があると思いますか? –