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

网站推广新手教程网站建设前需求调研表

网站推广新手教程,网站建设前需求调研表,苏州做网站,公网ip购买使用消息队列完成两个进程之间相互通信 #includemy_head.h struct msgbuf {long mtype;char mtext[128]; }; #define SIZE (sizeof(struct msgbuf) - sizeof(long))//分支线程从消息队列中读取类型2的消息 void *task(void *arg) {int msgid *((int *)arg);struct msg… 使用消息队列完成两个进程之间相互通信 #includemy_head.h struct msgbuf {long mtype;char mtext[128]; }; #define SIZE (sizeof(struct msgbuf) - sizeof(long))//分支线程从消息队列中读取类型2的消息 void *task(void *arg) {int msgid *((int *)arg);struct msgbuf buf;while(1){msgrcv(msgid,buf,SIZE,2,0);printf(收到消息%s\n,buf.mtext);if(strcmp(buf.mtext,quit) 0)break; }pthread_exit(NULL); }int main(int argc, const char *argv[]) {//创建key值key_t key ftok(/,k);if(key -1){perror(ftok error);return -1;}//用key值创建消息队列int msgid msgget(key,IPC_CREAT|0664);if(msgid -1){perror(msgget error);return -1;}//创建分支线程pthread_t tid -1;if(pthread_create(tid,NULL,task,msgid) ! 0){printf(create tid error\n);return -1;}//主线程向消息队列中存放类型1的消息struct msgbuf buf;while(1){printf(请输入消息类型1);scanf(%ld,buf.mtype);printf(请输入消息正文);scanf(%s,buf.mtext);msgsnd(msgid,buf,SIZE,0);if(strcmp(buf.mtext,quit) 0)break; }//删除消息队列if(msgctl(msgid,IPC_RMID,NULL) -1){perror(msgctl error);return -1;}//阻塞回收分支线程资源pthread_join(tid,NULL);return 0; } #includemy_head.h struct msgbuf {long mtype;char mtext[128]; }; #define SIZE (sizeof(struct msgbuf) - sizeof(long))//分支线程从消息队列中读取类型1的消息 void *task(void *arg) {int msgid *((int *)arg);struct msgbuf buf;while(1){msgrcv(msgid,buf,SIZE,1,0);printf(收到消息%s\n,buf.mtext);if(strcmp(buf.mtext,quit) 0)break; }pthread_exit(NULL); }int main(int argc, const char *argv[]) {//创建key值key_t key ftok(/,k);if(key -1){perror(ftok error);return -1;}//用key值创建消息队列int msgid msgget(key,IPC_CREAT|0664);if(msgid -1){perror(msgget error);return -1;}//创建分支线程pthread_t tid -1;if(pthread_create(tid,NULL,task,msgid) ! 0){printf(create tid error\n);return -1;}//主线程向消息队列中存放类型2的消息struct msgbuf buf;while(1){printf(请输入消息类型2);scanf(%ld,buf.mtype);printf(请输入消息正文);scanf(%s,buf.mtext);msgsnd(msgid,buf,SIZE,0);if(strcmp(buf.mtext,quit) 0)break; }//阻塞回收分支线程资源pthread_join(tid,NULL);return 0; } 将信号通信相关代码重新实现一遍 #includemy_head.h //信号处理函数 void handler(int signo) {if(signo SIGCHLD){waitpid(-1,NULL,WNOHANG);kill(getpid(),SIGKILL);}if(signo SIGUSR1){printf(逆子何至于此!!\n);} }int main(int argc, const char *argv[]) {//创建一个子进程int pid fork();if(pid 0){//父进程通过绑定信号函数将子进程发送的信号捕获后用函数处理if(signal(SIGCHLD,handler) SIG_ERR){perror(signal error);return -1;}if(signal(SIGUSR1,handler) SIG_ERR){perror(signal error);return -1;}//父进程在运行中while(1){printf(我真的还想再活500年\n);sleep(1);}}else if(pid 0){//子进程在运行中发送一个信号给父进程printf(来来来喝酒喝酒\n);sleep(5);printf(我已看破红尘父亲陪我走吧\n);kill(getppid(),SIGUSR1);//子进程退出sleep(2);exit(EXIT_SUCCESS);}else{perror(fork error);return -1;}return 0; } 将共享内存相关代码重新实现一遍 发送端 #includemy_head.h #define PAGE_SIZE 4096int main(int argc, const char *argv[]) {//创建key值int key ftok(/,k);if(key -1){perror();return -1;}//创建共享内存段int shmid shmget(key,PAGE_SIZE,IPC_CREAT|0664);if(shmid -1){perror(shmget error);return -1;}//将共享内存段映射到用户空间char *addr (char *)shmat(shmid,NULL,0);if(addr (void *)-1){perror();return -1;}printf(addr %p\n,addr);//操作共享内存段while(1){fgets(addr,PAGE_SIZE,stdin);addr[strlen(addr)-1] 0;if(strcmp(addr,quit) 0)break;}//取消映射if(shmdt(addr) -1){perror(shmdt error);return -1;}//删除共享内存if(shmctl(shmid,IPC_RMID,NULL) -1){perror(shmctl error);return -1;}return 0; } #includemy_head.h #define PAGE_SIZE 4096int main(int argc, const char *argv[]) {//创建key值int key ftok(/,k);if(key -1){perror();return -1;}//创建共享内存段int shmid shmget(key,PAGE_SIZE,IPC_CREAT|0664);if(shmid -1){perror(shmget error);return -1;}//将共享内存段映射到用户空间char *addr (char *)shmat(shmid,NULL,0);if(addr (void *)-1){perror();return -1;}printf(addr %p\n,addr);//操作共享内存段while(1){printf(共享内存中的数据为%s\n,addr);sleep(1);if(strcmp(addr,quit) 0)break;}//取消映射if(shmdt(addr) -1){perror();return -1;}return 0; }
http://www.hkea.cn/news/14546976/

相关文章:

  • 做企业网站域名付费资源下载站源码
  • 做韩国外贸网站东莞城乡住房建设厅网站
  • 电脑什么软件做短视频网站南京学习网站建设
  • .net网站制作seo排名方案
  • 手机网站制作的价格网站留言表单是如何做的
  • 什么网站可以做翻译兼职南昌企业自助建站
  • 宁波专业的网站搭建公司平面设计培训班哪家好
  • 自己做网站需要什么程序起名网站开发
  • 北京建设公司网站建设微信小程序 做网站
  • 律师建网站有没有代加工的网站
  • 南京做网站南京乐识赞茂名seo顾问服务
  • 网站设计项目计划书装饰公司接单技巧
  • phpwind 手机网站模板网站建设综合设计
  • 给人做网站windows优化大师绿色版
  • 网站需求清单百度推广开户多少钱一个月
  • 关于网站开发的销售discuzq
  • 网站开发怎么谈客户枣庄联通网站备案
  • 山西省旅游网站建设分析jsp个人网站怎样做
  • 专业建站计算机培训班包就业
  • 网站推广的常用方法有哪些?抖音推广计划
  • WordPress生成网站地图学ps有用还是网页制作
  • 做药品网站规划方案免费文字logo生成器
  • 网站开发协议书由谁来写成都旅游住哪里最方便
  • 企业网站免费推广方案什么是前端开发技术
  • 怎么做付款下载网站oa系统和erp系统区别
  • 扁平化设计风格网站做网站推广销售怎么样
  • 自己做网站有什么用工商公司注册核名查询
  • 成都专门做网站的公司dw网页制作教程经验
  • 企业网站的切片怎么做科技团队网站
  • 开发个网站需要多少钱wordpress有赞支付插件