mq_open无效参数以及在这种情况下如何调试linux内核

时间:2019-03-12 15:53:45

标签: linux linux-kernel posix

在进程A中,我这样打开队列:

struct mq_attr attr;
attr.mq_flags = 0;
attr.mq_maxmsg = 10;
attr.mq_msgsize = sizeof(GetMoreReq);
mq_open(name, O_RDWR | O_CREAT | O_NONBLOCK, 0664, &attr)

在流程B中:我想使用以下方法打开相同的队列

mq_open(mq_name, O_RDWR | O_NONBLOCK)

但是我收到错误消息:“无效的参数”

我不知道出什么问题了。所以我的问题是:

  1. 这是什么问题?
  2. 安装某些软件包后是否可以进入mq_open函数?如果是这样,我可以看到错误发生的地方。

我的操作系统版本Ubuntu 18.04:

Linux ubuntu-zhifan 4.15.0-43-generic #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

0 个答案:

没有答案