int main(int argc, char **argv)
{
mqd_t mqd;
mqd = mq_open("/tmp/posix.msg/", O_CREAT | O_EXCL | O_NONBLOCK, 0666, NULL);
printf("mq id: %d \n", mqd);
mq_close(mqd);
return 0;
}
vinay> gcc -o mq mq.c -lrt 维奈> ./ MQ mq id:-1
有人可以帮我吗?
答案 0 :(得分:0)
来自mq_overview:
每个消息队列都由表单名称/ somename标识; 也就是说,一个以null结尾的字符串,最多为NAME_MAX(即255) 由初始斜杠组成的字符,后跟一个或多个 字符,都不是斜杠。
此外,来自mq_open:
EACCES
名称包含多个斜杠。
因此,请在开头使用只有一个斜杠的名称。