Linxu - C进程间通信(预习内容九)
来源:互联网 发布:商标设计软件生成器 编辑:程序博客网 时间:2024/06/10 11:16
发送消息:
include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
int msgsnd(int msqid,struct msgbuf*msgp,int msgsz(大小),int msgflg)
功能:向消息队列中发送一条消息。
msqid
已打开的消息队列id
msgp
存放消息的结构
msgsz
消息数据长度
msgflg
发送标志,有意义的msgflg标志为IPC_NOWAIT,指明在消息队列没有足够空间容纳要发送的消息时,msgsnd是否等待。
消息格式:
struct msgbuf
{
long mtype;/*消息类型*/
char mtext[1]; /*消息数据的首地址*/
}
接受消息:
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
int msgrcv(int msqid, struct msgbuf *msgp, int msgsz, long msgtyp, int msgflg)
功能:从msqid代表的消息队列中读取一个
msgtyp类型的消息,并把消息存储在msgp指向
的msgbuf结构中。在成功地读取了一条消息以
后,队列中的这条消息将被删除。
int read_message(int qid,long type,struct mymsgbuf*qbuf)
{
int result,length;
length=sizeof(struct mymsgbuf)- sizeof(long);(将消息类型减去)
if((result=msgrcv(qid,qbuf,length,type,0))==-1)
return(-1);
return(result);
}
- Linxu - C进程间通信(预习内容九)
- Liunx - C通信间进程(预习内容一)
- Linux - C通信间进程(预习内容二)
- Linux - C进程间通信(预习内容三)
- Linux - C进程间通信(预习内容四)
- Linux - C进程间通信(预习内容五)
- Linux - C进程间通信(预习内容六)
- Linux - C进程间通信(预习内容七)
- Linux - C进程间通信(预习内容八)
- Linux - C进程间通信(预习内容十)
- Linux进程间通信预习(二)
- 进程间通信预习(一)
- 进程间通信预习(二)
- 进程间通信方式预习1
- 进程间通信方式预习2
- 预习进程间通信方式1
- Linux下进程通信预习(一)
- Linux-C预习内容(一)
- 基于dpdk的iperf性能测试
- 【codeforces】Codeforces Round #368 (Div. 2)
- React之组件性能调优
- 网易笔试题:回文序列
- 自己动手撸个模板引擎(50行左右)
- Linxu - C进程间通信(预习内容九)
- 最大权闭合子图
- 表达式求值 noip2013普及组t2
- 排序二叉树添加删除java实现
- Reverse Words in a String
- Qt5编程——excel操作
- Remove Linked List Elements
- 【留言板】Hello
- Java-----集合类