linux msg
2014-04-10 21:16
330 查看
#include <sys/types.h> #include <sys/msg.h> #include <unistd.h> #include <stdio.h> #include <string.h> struct msg_buf { int mtype; char data[256]; }; int main() { key_t key; int msgid; int ret; struct msg_buf msgbuf; key=ftok("/tmp/2",'a');//返回文件键值 printf("key=[%x]\n",key); msgid=msgget(key,IPC_CREAT|0666);//创建打开消息队列 if(msgid==-1) { printf("creat error\n"); return -1; } msgbuf.mtype=getpid(); strcpy(msgbuf.data,"delta will"); ret=msgsnd(msgid,&msgbuf,sizeof(msgbuf.data),IPC_NOWAIT);//发送消息 if(ret==-1) { printf("send message error!\n"); return -1; } printf("send msssage success!msgnumber=%d,msgdata=%s\n",sizeof(msgbuf)-sizeof(int),msgbuf.data); memset(&msgbuf,0,sizeof(msgbuf)); ret=msgrcv(msgid,&msgbuf,sizeof(msgbuf.data),getpid(),IPC_NOWAIT);//接受消息 if(ret==-1) { printf("receive message error!\n"); return -1; } printf("receive message success!,msgnumber=%d,msgdata=[%s]\n",ret,msgbuf.data); }
相关文章推荐
- 【study】linux 进程通信之msg
- linux IPC -msg 消息队列
- 练习--LINUX进程间通信之消息队列MSG
- Linux系统调用-- recv/recvfrom/recvmsg函数详解
- linux第10天 msg消息队列
- linux msg queue 基础操作
- 深入理解Linux进程间通信(IPC)-- 消息队列msg
- linux 中i2c 驱动学习(一)---i2c_msg 标志位
- Linux_ msg 消息队列
- Linux _msg 消息队列 demo
- linux ipc—msgqueue
- Linux系统调用-- recv/recvfrom/recvmsg函数详解(转)
- LINUX 下,编程自学五:msg,mem,pipe通信
- linux网络编程之socket(十六):通过UNIX域套接字传递描述符和 sendmsg/recvmsg 函数
- Linux系统调用-- recv/recvfrom/recvmsg函数详解(转)
- Linux系统调用-- recv/recvfrom/recvmsg函数详解
- Linux msgqueue
- linux启动不了mysql
- 在 Linux 上使用 Bugzilla 跟踪 bug
- [Linux]使用 ifupdown 的逻辑接口定义进行高级网络设置