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

郑州大型网站制作简单的seo

郑州大型网站制作,简单的seo,刚刚封城最新消息2021,网站托管维护消息队列完成进程间通信 #include <myhead.h>#define size sizeof(msg_ds)-sizeof(long) //正文大小//消息结构体 typedef struct {long msgtype; //消息类型char data[1024]; //消息正文 }msg_ds;//创建子线程构造体 void *task1(void *arg) {//创造第二个key值ke…

消息队列完成进程间通信 

#include <myhead.h>#define size sizeof(msg_ds)-sizeof(long)  //正文大小//消息结构体
typedef struct
{long msgtype;  //消息类型char data[1024];   //消息正文
}msg_ds;//创建子线程构造体
void *task1(void *arg)
{//创造第二个key值key_t key1;if((key1=ftok("/",'f'))==-1){perror("ftok error");}//创建第二个消息队列int msgid1;if((msgid1=msgget(key1,IPC_CREAT|0664))==-1){perror("msgget error");}//4、从消息队列中取数据msg_ds msg1;	while(1){//从消息队列中取数据//第一个0表示取消息的类型,每次都是取第一个//第二个0表示阻塞方式从消息队列中取数据if(msgrcv(msgid1,&msg1,size,0,0)==-1){perror("msgrcv error");}if(strcmp(msg1.data,"quit")==0){break;}printf("rcv: %s\n", msg1.data);}//删除消息队列msgctl(msgid1,IPC_RMID,NULL);
}
int main(int argc, const char *argv[])
{//1、创建key值key_t key;if((key=ftok("/",'k'))==-1){perror("fotk error");return -1;}//2、创造消息队列int msgid;if((msgid=msgget(key,IPC_CREAT|0664))==-1){perror("msgget error");return -1;}//3、主线程向队列中发送数据msg_ds msg={.msgtype=100};//定义一个线程号pthread_t tid;//创建一个子线程if(pthread_create(&tid,NULL,task1,NULL)){printf("子线程创建失败\n");return -1;}while(1){//printf("请输入消息的内容:");fgets(msg.data,sizeof(msg.data),stdin);  //向终端进程中输入数据msg.data[strlen(msg.data)-1]='\0'; //将最后一个字符'\n'变成'\0'//将消息发到消息队列中if(msgsnd(msgid,&msg,size,0)==-1){perror("msgsnd error");return -1;}//当输入quit字符串时,退出循环if(strcmp(msg.data,"quit")==0){break;}}//删除消息队列msgctl(msgid,IPC_RMID,NULL);return 0;
}
#include <myhead.h>#define size sizeof(msg_ds)-sizeof(long)  //正文大小//消息结构体
typedef struct
{long msgtype;  //消息类型char data[1024];   //消息正文
}msg_ds;//创建子线程构造体
void *task1(void *arg)
{//创造第二个key值key_t key1;if((key1=ftok("/",'f'))==-1){perror("ftok error");}//创建第二个消息队列int msgid1;if((msgid1=msgget(key1,IPC_CREAT|0664))==-1){perror("msgget error");}//4、从消息队列中取数据msg_ds msg1={.msgtype=100};	//4、从消息队列中取数据while(1){//printf("请输入消息的内容:");fgets(msg1.data,sizeof(msg1.data),stdin);  //向终端进程中输入数据msg1.data[strlen(msg1.data)-1]='\0'; //将最后一个字符'\n'变成'\0'//将消息发到消息队列中if(msgsnd(msgid1,&msg1,size,0)==-1){perror("msgsnd error");}//当输入quit字符串时,退出循环if(strcmp(msg1.data,"quit")==0){break;}}//删除消息队列msgctl(msgid1,IPC_RMID,NULL);
}
int main(int argc, const char *argv[])
{//1、创建key值key_t key;if((key=ftok("/",'k'))==-1){perror("fotk error");return -1;}//2、创造消息队列int msgid;if((msgid=msgget(key,IPC_CREAT|0664))==-1){perror("msgget error");return -1;}//3、主线程向队列中取数据msg_ds msg={.msgtype=100};//定义一个线程号pthread_t tid;//创建一个子线程if(pthread_create(&tid,NULL,task1,NULL)){printf("子线程创建失败\n");return -1;}while(1){//从消息队列中取数据//第一个0表示取消息的类型,每次都是取第一个//第二个0表示阻塞方式从消息队列中取数据if(msgrcv(msgid,&msg,size,0,0)==-1){perror("msgrcv error");return -1;}if(strcmp(msg.data,"quit")==0){break;}printf("rcv: %s\n", msg.data);}//删除消息队列msgctl(msgid,IPC_RMID,NULL);return 0;
}

 

http://www.ds6.com.cn/news/91956.html

相关文章:

  • 应该如何做营销型网站最近发生的重大新闻事件
  • 你注册过哪些网站官网百度seo快速排名优化服务
  • ui设计的发展趋势做网站优化推广
  • 淘宝购物券网站怎么做360搜索引擎网址
  • 单页网站分类达人介绍
  • 南昌有做网站的吗鹤岗网站seo
  • 上海装修公司哪家最好南京百度快速排名优化
  • 广州seo网站营销app推广是什么意思
  • 营销型网站需要备案吗百度网盘资源搜索
  • 专业仿站网站建设企业培训课程表
  • 培训机构出来的前端好找工作吗嘉兴网站建设方案优化
  • 别人用我公司营业执照备案做网站河南网站设计
  • 网上如何做网站员工培训课程
  • yy直播怎么样厦门seo外包服务
  • 网站设计 企业 济南电商培训基地
  • 做网站vs2012能不能做培训班报名
  • 做网站的图片从哪里找seo分析工具有哪些
  • 多人在线协作网站开发关键词的优化和推广
  • 绍兴网站建设自己怎么制作网站
  • 沧州北京网站建设长春网站seo
  • 做网站坂田专业的营销团队哪里找
  • 深圳做网站 信科网络口碑营销的作用
  • 网站续费骗局百度灰色关键词排名技术
  • 用模板做的网站不好优化整站优化加盟
  • 织梦app网站模板百度如何搜索关键词
  • 政府网站架构工具关键词搜索排名推广
  • 郑州专业做网站河南最新消息
  • 网站备案信息可以改吗seo网站优化详解
  • 网站管理制度建设的情况百度推广投诉电话
  • 河北住房和城乡建设厅网站官网怎样制作网页