I fork()
プロセスXとYに、その後Y forks()
を再度実行し、Zを複数回処理します。フォークによって生成されたプロセス孫を待つ/または終了させる
今プロセスYは「リスナー」の一種であり、私はXをDeleterにしたいと考えています。 Zプロセスは実際のアクションを実行します。 ZプロセスはXの孫である。
FIFOといくつかのシグナリングでは、XはZプロセスのすべてのpidのリストを生成した。問題は今、私がZを使ってZプロセスゾンビを削除したいということです(pidのリストを参照)。
私はwaitpid()
で試しましたが、もちろん動作しません(直接の子供の場合のみ)。しかし、私はこれについて自分自身で拡張を行う可能性について読んだ。しかし、私は本当にそれを行う方法を知りませんでした。
ゾンビで別のリストを保持していると思っていますが(これは終了時の信号ですが)これは私がpidを保存したのと同じです。別の方法でやりたいと思います。
どのようにすればいいですか?