SystemV消息队列
简介
消息队列就是一个消息的链表。可以把消息看作一个记录,具有特定的格式以及特定的优先级。对消息队列有写权限的进程可以向中按照一定的规则添加新消息;有读权限的进程则可以读走消息。读走就没有了。消息队列是随内核持续的。 只有内核重启或人工删除时,该消息才会被删除。在系统范围内,消息队列与键值唯一对应。
相关函数
msgctl(int msqid, int cmd, struct msqid_ds *buf);>//消息队列的控制函数//command是将要采取的动作,它可以取3个值,
//IPC_STAT:把msgid_ds结构中的数据设置为消息队列的当前关联值,即用消息队列的当前关联值覆盖msgid_ds的值。
//IPC_SET:如果进程有足够的权限,就把消息列队的当前关联值设置为msgid_ds结构中给出的值
//IPC_RMID:删除消息队列
int msgget(key_t key, int msgflg);//创建访问一个消息队列