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

海外网站加速免费电商平台seo

海外网站加速免费,电商平台seo,百度怎么优化关键词排名,工会网站开发需求分析目录 1、使用消息队列完成两个进程之间相互通信 2、共享内存实现两个进程之间的通信 3、思维导图 1、使用消息队列完成两个进程之间相互通信 //msgsnd.c #include <myhead.h>// 要发送的消息类型 struct msgbuf {long mtype;char mtext[1024]; };// 定义一个宏&#…

目录

1、使用消息队列完成两个进程之间相互通信

2、共享内存实现两个进程之间的通信

3、思维导图


1、使用消息队列完成两个进程之间相互通信

//msgsnd.c
#include <myhead.h>// 要发送的消息类型
struct msgbuf
{long mtype;char mtext[1024];
};// 定义一个宏,为后面需要传入数据的大小
#define SIZE sizeof(struct msgbuf) - sizeof(long)int main(int argc, char const *argv[])
{// 1.创建出一个key值,用于产生消息队列key_t key = ftok("/", 'k');if (key == -1){perror("ftok error");return -1;}// 2.通过生成的key创建出一个消息队列对象int msqid = msgget(key, IPC_CREAT | 0664);if (msqid == -1){perror("msqid error");return -1;}// 向消息队列中存放消息struct msgbuf buf;// 创建父子进程int pid = fork();if (pid < 0){perror("fork error");return -1;}else if (pid == 0){// 子进程,用于读取消息队列中类型为2的数据while (1){// 读取消息队列中类型为1的数据msgrcv(msqid, &buf, SIZE, 2, 0);if (strcmp(buf.mtext, "quit") == 0){break;}// 直接输出到终端,读到了什么内容printf("\n接收到的数据为:%s\n", buf.mtext);}}// 父进程// 向消息队列中存放类型为1数据while (1){// 发送消息为1的数据buf.mtype = 1;printf("请输入消息内容>>>");fgets(buf.mtext, SIZE, stdin);buf.mtext[strlen(buf.mtext) - 1] = 0; // 将回车变成'\0'// 将数据以阻塞的形式发送到消息队列中msgsnd(msqid, &buf, SIZE, 0);printf("发送成功\n");}wait(NULL);return 0;
}
//msgrecv.c
#include <myhead.h>// 要接收的消息类型
struct msgbuf
{long mtype;char mtext[1024];
};// 定义一个宏,为后面需要传入数据的大小
#define SIZE sizeof(struct msgbuf) - sizeof(long)int main(int argc, char const *argv[])
{// 1.创建出一个key值,用于打开消息队列key_t key = ftok("/", 'k');if (key == -1){perror("ftok error");return -1;}// 2.打开消息队列对象int msqid = msgget(key, IPC_CREAT | 0664);if (msqid == -1){perror("msqid error");return -1;}// 向消息队列中存放消息struct msgbuf buf;// 创建父子进程int pid = fork();if (pid < 0){perror("fork error");return -1;}else if (pid == 0){// 子进程,用于读取消息队列中类型为1的数据while (1){// 读取消息队列中类型为1的数据msgrcv(msqid, &buf, SIZE, 1, 0);if (strcmp(buf.mtext, "quit") == 0){break;}// 直接输出到终端,读到了什么内容printf("\n接收到的数据为:%s\n", buf.mtext);}// 删除消息队列if (msgctl(msqid, IPC_RMID, NULL) == -1){perror("msgctl error");return -1;}exit(EXIT_SUCCESS);}// 父进程// 向消息队列中存放类型为2数据while (1){// 向消息队列中存放类型为2的数据buf.mtype = 2;printf("请输入消息内容>>>");fgets(buf.mtext, SIZE, stdin);buf.mtext[strlen(buf.mtext) - 1] = 0; // 将回车变成'\0'// 将数据以阻塞的形式发送到消息队列中msgsnd(msqid, &buf, SIZE, 0);printf("发送成功\n");}wait(NULL);return 0;
}

 输出结果如下:实现两个进程之间的通信

2、共享内存实现两个进程之间的通信

//shmsnd.c
#include<myhead.h>
#include<sys/user.h>
int main(int argc, char const *argv[])
{//创建key值用于创建共享内存段key_t key = ftok("/",'t');if(key == -1){perror("ftok error");return -1;}printf("key = %d\n",key);//2、创建一个共享内存的对象int shmid = shmget(key,PAGE_SIZE,IPC_CREAT|0664);if(shmid == -1){perror("shmget error");return -1;}printf("shmid = %d\n",shmid);//3、将共享内存段映射到程序中来char *addr = (char *)shmat(shmid,NULL,0);//参数1:共享内存id号//参数2:系统自动映射对齐页//参数3:对共享内存的操作权限为读写权限printf("addr = %p\n",addr); //输出映射的地址//读出共享内存中的数据printf("消息为:%s",addr);sleep(5);if(shmdt(addr) == -1){perror("shmdt error");return -1;}//删除共享内存if(shmctl(shmid, IPC_RMID, NULL) == -1){perror("shmctl error");return -1;}while(1);return 0;
}
//shmrecv.c
#include<myhead.h>
#include<sys/user.h>
int main(int argc, char const *argv[])
{//创建key值用于创建共享内存段key_t key = ftok("/",'t');if(key == -1){perror("ftok error");return -1;}printf("key = %d\n",key);//2、创建一个共享内存的对象int shmid = shmget(key,PAGE_SIZE,IPC_CREAT|0664);if(shmid == -1){perror("shmget error");return -1;}printf("shmid = %d\n",shmid);//3、将共享内存段映射到程序中来char *addr = (char *)shmat(shmid,NULL,0);//参数1:共享内存id号//参数2:系统自动映射对齐页//参数3:对共享内存的操作权限为读写权限printf("addr = %p\n",addr); //输出映射的地址//向共享内存中写入数据strcpy(addr,"hello a hua qing yuan jian\n");sleep(5);//取消映射关系if(shmdt(addr) == -1){perror("shmdt error");return -1;}while(1);return 0;
}

输出结果如下:

3、思维导图

http://www.yayakq.cn/news/95129/

相关文章:

  • 建的网站403深网著名网站
  • 哪里去找做的好看的网站微网站建设报价方案模板下载
  • 长春如何建立一个平台网站装企营销系统
  • 教育教学成果展示网站建设深圳专业网站建设制作价格
  • 房产类网站建设换网站了吗
  • 网站搭建教学网中国广告公司排名前十强
  • 做网站的感觉wordpress怎么引用single
  • 建站平台系统百度站长工具网站认证
  • 固始做网站电商一年可以赚多少钱
  • 深圳纯设计公司长春seo全网营销
  • 网站问题有哪些内容龙华区住房和建设局官方网站
  • 做做网站app厦门 网站制作
  • 网站建设毕业设计中期进度报告重庆巴南网站制作
  • 企业微网站中国建设银行官网站电脑版
  • 网站如何发布和推广wordpress自定义远程字体
  • 龙岗建设网站制作深圳代理记账多少钱
  • 手机网站改app精准营销的作用
  • 网站制作培训速成班矿产网站建设价格
  • 网站百度未收录商桥安装显示wordpress炫酷插件
  • 医院设计网站建设一建报名时间2023
  • discuz做资讯网站合适吗宝安做棋牌网站建设多少钱
  • 韩国明星都在那个网站做直播jquery 类似wordpress
  • 做网站项目流程网站在建设中模板
  • 建筑公司网站应该则么做彩票开奖网站开发
  • 网站建设支出账务处理医疗 企业 网站建设
  • 做网站的团队南城东莞网站建设
  • 如何在360网站网页上做笔记苏州长尾词seo排名优化
  • 山东网站建设seo网站推荐界面
  • 酒店如何做网站做网站广告费
  • 自己的做网站seo技术培训机构