Linux - C进程间通信(预习内容八)
2016-09-25 22:03
218 查看
打开/创建:
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
int msgget(key_t key, int msgflg)
(返回一个msgget 的id)
key:键值,由ftok获得。
msgflg:标志位。
返回值:与健值key相对应的消息队列描述字。
IPC_CREAT
创建新的消息队列。
创建:
在以下两种情况下,将创建一个新的消息队列:
1、如果没有与健值key相对应的消息队列,并且 msgflg中包含了IPC_CREAT标志位。
2、key参数为IPC_PRIVATE
IPC_EXCL
与IPC_CREAT一同使用,表示如果要创建的消息队列已经存在,则返回错误。
IPC_NOWAIT
读写消息队列要求无法得到满足时,不阻塞。
int open_queue(key_t keyval)
{
int qid;
if((qid=msgget(keyval,IPC_CREAT))==-1)
{
return(-1);
}
}
return (qid);
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
int msgget(key_t key, int msgflg)
(返回一个msgget 的id)
key:键值,由ftok获得。
msgflg:标志位。
返回值:与健值key相对应的消息队列描述字。
IPC_CREAT
创建新的消息队列。
创建:
在以下两种情况下,将创建一个新的消息队列:
1、如果没有与健值key相对应的消息队列,并且 msgflg中包含了IPC_CREAT标志位。
2、key参数为IPC_PRIVATE
IPC_EXCL
与IPC_CREAT一同使用,表示如果要创建的消息队列已经存在,则返回错误。
IPC_NOWAIT
读写消息队列要求无法得到满足时,不阻塞。
int open_queue(key_t keyval)
{
int qid;
if((qid=msgget(keyval,IPC_CREAT))==-1)
{
return(-1);
}
}
return (qid);
相关文章推荐
- linux下使用c语言访问mySql数据库
- 我的Android开发环境--Linux Mint
- .NET跨平台之运行与Linux上的Jexus服务器
- Linux vmstat命令实战详解
- Spark源码学习——在Linux环境下使用IDEA看Spark源码
- 图解Linux命令之--split命令
- Linux部分命令详解
- linux程序设计:进程和信号
- linux中怎么查看ip地址
- 8-文件IO-fcntl函数
- 移植 ssh 到开发板
- Linux find 用法示例
- Linux入门之内核管理番外篇(4)udev入门(1) 推荐
- window/linux双系统时间错误的调整
- linux常用查找命令详解
- linux上的文件管理类命令有哪些,常用的使用方法及其相关实例演示
- Linux的任务调度指令
- Linux学习笔记 -- day07 dubbo安装
- Linux常用命令学习
- 安装完最小化 RHEL/CentOS 7 后需要做的 30 件事情(六)