为什么创建posix消息队列会有invalid argument

linyilong3 2011-03-10 09:05:28

#include "unp.h"

int main(int argc,char *argv[])
{
mqd_t mqd;

mqd=mq_open("mq",O_RDONLY|O_CREAT,FILE_MODE,NULL);
if(mqd<0)
{
perror("mq_open");
exit(1);
}
mq_close(mqd);
return 0;
}



后来改成/tmp/mq也不行,无效参数究竟是哪一个?
还有是不是posix的信号灯用sem_wait和sem_post都要root的权限?但是创建不用?我sem_open创建后发现要sudo才能用sem_pos和sem_wait,我用的ubuntu
...全文
167 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
justkk 2011-03-11
  • 打赏
  • 举报
回复
还是与名字有关系
试验了一下,可以用/mq

你另外一个帖子估计也是同样的原因

23,110

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧