2016-07-18 1 views
-1

によって作成されたLS -al提示メッセージキューは、私がメッセージ・キュー/temp.1234を作成するためにmq_openを使用していませんはなぜmq_open

  1. が、ディレクトリ/ls -alipcs -qを命じるメッセージキューに関する情報は表示されません。
  2. 私はメッセージを送信するためにmq_sendを使用します。また、別のプログラムでは、mq_open( "/ temp.1234"、O_WRONLY)は3(メッセージディスクリプタ)を正常に返しますが、mq_receiveを呼び出すとEBADFを出力します。 OSはubuntuです。
  3. ubuntuではなくsolarisでのみ有効ですか?

追加: それはここでは、UNIXネットワークプログラミング第2巻

からだSolaris 2.6の下に出力されます:
のSolaris%のmqcreatel /temp.l234
のSolaris%1S -1/TMP 132632 otherl /.* L234
-rw-RW-rw- 1 rstevens 10月23日17時08分/tmp/.MQDtemp.1234
-rw-RW-rw- 1 rstevensのother1 0 10月23日17時08分/ tmp/.MQLtemp.l234
-rw-R - r--の 1 rstevens other1 0 10月23日17:08 /tmp/.MQPtemp.l234

答えて

2
  1. 最初の引数がないファイル名で、それは識別子のみ。ファイルシステムには存在しません。

  2. 書き込み専用キューからの受信を試みるのはエラーです。

+0

私はその本に基づいて 'ls -l/temp.1234'をテストします。 'ipcs -q'もうまくいきません。コマンドでメッセージキューを検査する方法を教えてください。 – hel