問題タブ [mqueue]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
536 参照

ipc - システム内のメッセージ キューを見つけて閉じる/リンク解除する

メッセージ キューを多用するソフトウェア コードを構築しているルートではない SLES-11 マシンがあります。いくつかのバグにより、エラーが発生しました:

mq_open: Too many open files

コマンドを使用してipcs -aいますが、メッセージ キューが表示されません。ipcrmそのため、コマンドを使用できません。

そのため、現在、マシンをまったく使用できません。システム内の (私が開いた) メッセージキューを見つけて閉じる方法はありますか?

情報: 私のシステムには がありません/dev/mqueue。私もrootユーザーではありません

0 投票する
1 に答える
667 参照

posix - POSIX メッセージ キューを作成するときに、名前の前にスラッシュを付ける必要があるのはなぜですか

POSIX メッセージ キューで名前の前に「/」を付ける必要がある特定の理由はありますか?

たとえば、「thequeue」という名前のメッセージ キューを開こうとしたとします。私は使用する必要があります:

0 投票する
1 に答える
970 参照

c++ - データが存在する場合に EAGAIN を返す mq_receive

2 つのメッセージを含む mqueue がありますが、mq_receive を呼び出してもデータがプルされません。このメッセージ キューを使用した経験がないので、無知であることをお許しください。「ファイル」をエコーすると情報が表示されるため、送信側は正常に機能していると思います。

これは、メッセージ信号が生成されていない 2 つのメッセージです。PID は、mq_receive を呼び出すプロセスです。

参考までに、オープンコードはこちらです。

で、受け取りはこちら。

msgSize は、errno EAGAIN で常に -1 を返します。ドキュメントから、これはキューにメッセージがないことを意味するはずです。非ブロッキングであることに注意してください。

0 投票する
1 に答える
7445 参照

c - posix mqueue の不正なファイル記述子

誰でも、posix mqueue の不正なファイル記述子の問題を解決するのを手伝ってくれます。RAW ソケット パケットを読み取って mqueue に配置しようとしています。

私が得た出力は

main:64: 0 <= mq_send(mq, buffer, MAX_SIZE, 0): 不正なファイル記述子

0 投票する
1 に答える
1713 参照

c - mqueue のメッセージで構造体を渡す

IP/RAW ソケット パケットをそのパラメーター (IP パケットへの char ポインターとそのサイズなど) と共に読み取り、それを WRONLY モードで mqueue に入れ、RDONLY モードでキューから同じパラメーターを取得しようとしています。メッセージ(msg)の送受信に構造を使用しています。メッセージの送信中、両方のパラメーターがキューに正常に配置されますが、取得中にセグメンテーション違反が返されます。私の送受信ファイルは以下のとおりです。

mq_send.c

mq_receive.c

mqueue_send.c の出力:

mq_receive.c の出力:

0 投票する
1 に答える
681 参照

c - Posix メッセージ キュー QSIZE クエリ

mq_send()/mq_receive() を実行する前後に「cat /dev/mqueue/myqueue」を使用してメッセージ キューの QSIZE を調べると、mq_recieve() の後にキューにいくつかのバイトが残っているように見えます。私の小さなテストプログラムは以下の通りです:

最初に 62 バイトがキューに入れられ、14 バイトのメッセージを送受信した後に 48 バイトの残りが残る理由がわかりません。どんな助けでも大歓迎です。

敬具

ジョン・ダフィー