打开/创建:
#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);