linux System V 消息队列的内核结构和msgget、msgctl 函数
发布时间:2016-09-26 09:43:48 所属栏目:Linux 来源:站长网
导读:一、消息队列 1、消息队列提供了一个从一个进程向另外一个进程发送一块数据的方法 2、每个数据块都被认 为是有一个类型,接收者进程接收的数据块可以有不同的类
|
写个小程序测试一下这个函数:
/*************************************************************************
> File Name: basic.c
> Author: Simba
> Mail: dameng34@163.com
> Created Time: Tue 12 Mar 2013 06:54:20 PM CST
************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#include<sys/ipc.h>
#include<sys/msg.h>
#include<sys/types.h>
#include<unistd.h>
#include<errno.h>
#define ERR_EXIT(m)
do {
perror(m);
exit(EXIT_FAILURE);
} while(0)
int main(void)
{
int msgid;
msgid = msgget(1234, 0666 | IPC_CREAT);
if (msgid == -1)
ERR_EXIT("msgget");
printf("msgget successn");
msgid = msgget(1234, 0);
printf("msgid=%dn", msgid);
return 0;
}
程序先创建一个消息队列,名字为1234,接着打开这个消息队列,当flags = 0 表示按原来权限打开。 输出如下 : simba@ubuntu:~/Documents/code/linux_programming/UNP/system_v$ ./msgget msgget success msgid=0 我们可以使用命令ipcs -q 查看: simba@ubuntu:~/Documents/code/linux_programming/UNP/system_v$ ipcs -q ------ Message Queues ------ -- key msqid owner perms used-bytes messages (编辑:温州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐
热点阅读

