[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:99664] Re: プロセス間通信(シグナル)


としです。

> > IPC_WAITでやりたいところなんですが、現状では
> > IPC_NOWAITでやっています。理由として、プロセスDは双方向通信を
> > しています。
> > 
> > プロセスA⇔プロセスD⇔プロセスE
> > 
> > のように、プロセスEからデータが送られる場合があり、
> > E→D→Aと、Aに送信する必要がある為、プロセスAを待ち続ける
> > 訳にはいかないので困ったものです。
> 
> select(2) を使いましょう。
> 
> プロセス間通信にシグナルを使うことは、お勧めできません。

IPC_WAIT のキーワードから、今回は、プロセス間通信にメッセージキュー
を使っていると判断したのですが、メッセージキュー記述子も、select()
によるイベントチェック対象に出来るのですか?

いや、私自身、昔、この辺が気になって、色々文献を漁った事があるのです
が、「メッセージキュー記述子も、select() で使える」と言う記載を見つ
ける事が出来なかったので、メッセージキューは select() で使えない...
と思っていました。
#記載が無い→出来ないと判断した次第です。

もし、メッセージキュー記述子に対しても、select() が可能であれば、
シグナルを使わずに、select() を使った方が良いと私も思います。

ではこれにて。

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
Follow-Ups: References: