您的位置:首页 > 其它

消息队列读操作

2016-11-27 23:08 323 查看
#include <stdio.h>
#include <sys/msg.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <stdlib.h>

#define BUFSZ 4096

struct msg
{
long msg_types;
char msg_buf[512];
};

int main(int argc,char ** argv)
{
int qid;
int len;
struct msg pmsg;
if(argc != 2)
{
perror("argc");
}
qid = atoi(argv[1]);
len = msgrcv(qid,&pmsg,BUFSZ,0,0);
if(len > 0)
{
pmsg.msg_buf[len] = '\0';
printf("qid %d\n",qid);
printf("msg type %d\n",pmsg.msg_types);
printf("msg text %s\n",pmsg.msg_buf);
}
else if( len  == 0)
{
printf("no message!\n");
}
else
{
perror("msgrcv\n");
}
//system("ipcs -q");

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: