- 论坛徽章:
- 0
|
是UNPv2的一个例子。
- #include <stdio.h>
- #include <mqueue.h>
- #include <unistd.h>
- #include <sys/stat.h>
- #define FILE_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH)
- int main(int argc, char** argv)
- {
- mqd_t mqd;
- int c, flags;
- flags = O_RDWR|O_CREAT;
- while((c = getopt(argc, argv, "e")) != -1){
- switch(c){
- case 'e':
- flags |= O_EXCL;
- break;
- }
- }
- if(optind != argc-1){
- printf("Invalid arg\n");
- return 1;
- }
- mqd = mq_open(argv[optind], flags, FILE_MODE, NULL);
- if(mqd == -1){
- perror("mq_open");
- return 2;
- }
- mq_close(mqd);
- return 0;
- }
复制代码
例子就是建立一个posix消息队列。
编译:gcc 5_2.c -lrt
执行: ./a.out /home/zuhf/my_test/temp/temp.1234
结果:mq_open: Permission denied
才疏学浅,这种问题还真不知道怎么解决了。 |
|