以下の投稿の解決策は私にはうまくいきません。「メッセージが長すぎます」というエラー メッセージが表示されます。何が問題になる可能性がありますか? LinuxでPOSIX APIを使用してメッセージキューで整数を送信するには?
私が正しければ、 apid_t
は として定義されますint
。私は次のことをしました:
struct mq_attr attr;
attr.mq_flags = 0;
attr.mq_maxmsg = 1000;
attr.mq_msgsize = sizeof(pid_t);
mqd_t queue = mq_open(unique_name, O_RDWR|O_CREAT, 0600, &attr);
mqd_t result = mq_send(queue, &pid, sizeof(pid), 0);
の行でコンパイル時に次のエラーが発生しますmq_send
。
「互換性のないポインター型から 'mq_send' の引数 2 を渡しています」
「初期化により、キャストなしで整数からポインターが作成されます」