2011-01-05 6 views
0

私は名前付きパイプ経由で2つのプロセス(AとB)の間にIPCを持つbashプログラムを書いています。 Aがクラッシュすると、名前付きパイプがブロックされているため、Bが無期限にブロックされる可能性があり(逆も同様)、心配しています。 AとBをリンクすることはできますか?もしAがクラッシュしたら、Bもクラッシュするようにしますか?このブロッキングの問題を解決するための他の選択肢は認められるでしょう。2つのプロセスをリンクすると、1つのプロセスがクラッシュしたときにもう1つのプロセスもクラッシュする可能性がありますか?

ありがとうございます。

+0

なぜ、別のスレッドで通信を実行し、それが長時間ブロックされている場合はそれを強制終了しますか? –

答えて

0

あなたはbashスクリプトについて話している場合は、プロセス「A」の活動を監視し、プロセス「B」

+0

あなたはAとBのPIDを持ち、定期的にチェックするプロセスを意味しますか? –

0

追加のプロセス「C」の必要があるかもしれませんか?そうであれば、Aに送信された信号を捕まえてそれを殺し、Bに信号を送信して終了することができます。

関連するbash機能は、trapkillです。そして関連するシグナルはSIGKILL、SIGINT、SIGHUPなどとなります。呼び出し:trap -lは可能なすべてのシグナルをリストします。

関連する問題