当前位置: 首页 > news >正文

淄博专业做网站一站式媒体发布平台

淄博专业做网站,一站式媒体发布平台,制作企业网站的问题,wordpress #前言:消息队列也是linux开发ipc机制中较为重要的一个进程间通信机制。 1.系统创建或获取消息对列 int msgget(key_t key, int mode); 创建消息队列,或者获取消息队列。 参数: key - 使用ftok()获取到的key mode - IPC_CREAT|0666 返回&…

前言:消息队列也是linux开发ipc机制中较为重要的一个进程间通信机制。

1.系统创建或获取消息对列
int msgget(key_t key, int mode);

创建消息队列,或者获取消息队列。
参数:
key - 使用ftok()获取到的key
mode - IPC_CREAT|0666
返回:
消息队列的ID

2.往队列里发送一条消息。此操作被中断后不会被重启(信号处理中SA_RESTART)

int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg);

参数:
msgid: - 消息队列的id
msgp - 消息,通常为下面的结构体
struct msgbuf{
long mtype; /消息类型,必需>0/
char mtext[100]; /消息数据,可自定义类型与大小/
};
msgsz - 消息的长度,指的消息数据的长度
msgflg - IPC_NOWAIT(不阻塞),MSG_EXCEPT(接受不检测mtype),MSG_NOERROR(消息数据过长时会截断数据)
返回:
0表示成功, -1表示失败

*3.int msgrcv(int msgid, void msgp, int msgsz, long msgtyp, int msgflg);

作用:接收消息队列中的消息

所需要的头文件:
#include <sys/types>
#include <sys/ipc.h>
#include <sys/msg.h>

在这里插入图片描述
*4.int msgctl(int msqid, int cmd, struct msqid_ds buf)

作用:msgctl系统调用对msqid标识的消息队列执行cmd命令操作。

返回值:0,成功;-1,失败;EFAULT(buf指向的地址无效);EIDRM(在读取中队列被删除);EINVAL(msgqid无效,或者msgsz小于0);EPERM(IPC_SET或者IPC_RMID命令被使用,但调用程序没有写的权限)

使用命令:
IPC_STAT:读取消息队列的数据结构msqid_ds,并将其存储在buf指定的地址中。

IPC_SET:设置消息队列的数据结构msqid_ds中的ipc_perm元素的值。这个值取自buf参数。

IPC_RMID:从系统内核中移走消息队列。

我们再说一下队列的msqid_ds结构体,对于每一个队列都有一个msqid_ds来描述队列当前的状态
struct msqid_ds {//Linux系统中的定义
struct ipc_perm msg_perm; /* Ownership and permissions
time_t msg_stime; /* Time of last msgsnd() /
time_t msg_rtime; /
Time of last msgrcv() /
time_t msg_ctime; /
Time of last change /
unsigned long __msg_cbytes; /
Current number of bytes inqueue (non-standard) /
msgqnum_t msg_qnum; /
Current number of messagesin queue /
msglen_t msg_qbytes; /
Maximum number of bytesallowed in queue /
pid_t msg_lspid; /
PID of last msgsnd() /
pid_t msg_lrpid; /
PID of last msgrcv() */
};//不同的系统中此结构会有不同的新成员。这个结构体的作用是用来管理消息队列的,通过cmd指令来设置这结构体中的值,进而达到控制消息队列的目的

http://www.shuangfujiaoyu.com/news/60314.html

相关文章:

  • 网页设计实训总结ppt滕州网站建设优化
  • 关于做摄影网站广西网络优化seo
  • 广东网站建设服务商国外网站加速
  • 做营销的网站株洲网站建设
  • 辽宁建设工程信息网网站seo推广服务哪家好
  • 广东建泰建设有限公司网站网页制作
  • 云南建设厅网站网络服务商主要包括
  • 文学类网站怎么做大数据营销精准营销
  • 网站制作成本百度文库网页版
  • 网站百度指数分析百度域名提交收录网址
  • 济南市做网站的公司宁波seo推广费用
  • 高端外贸网站制作百度站长链接提交
  • 做那个男女的视频网站工业设计公司
  • 自助建站和网站开发的利弊国外引擎搜索
  • wordpress ios客户端手机优化专家下载
  • 网站后台上传图片无法显示杭州做搜索引擎网站的公司
  • 做企业网站哪里找竞价推广代运营
  • 自己做一个音乐网站怎么做乔拓云建站平台
  • 网站建设 常见问题视频广告接单平台
  • 手机网站开发怎么测试今日新闻10条简短
  • 网站建设知识深圳高端seo外包公司
  • wordpress po文件淘宝关键词怎么优化
  • 如何做网站长尾关键词布局seo外链平台
  • 创客贴网页设计网站网站域名查询
  • 网站项目建设流程怎样弄一个自己的平台
  • 网站制作 维护 武汉怎么去做网络推广
  • 知名的网站开发公司seo查询百科
  • 现在流行用什么语言做网站品牌推广外包公司
  • 做网站和谷歌推广一共多少钱万网官网域名查询
  • 做个动态网站要多钱搜索引擎优化的实验结果分析