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

网站建设每月工作多少动画设计专业哪个学校比较好

网站建设每月工作多少,动画设计专业哪个学校比较好,双鸭山网站建设企业,网上购物平台类型有哪些子进程无论是正常或异常退出#xff0c;内核都会向父进程发送信号 SIGCHILD.#xff0c;因为无论是使用wait函数#xff08;阻塞#xff09;#xff0c;还是使用waitpid(得循环判断#xff09;都会将父进程阻塞住#xff0c;而不能执行别的操作#xff0c;所以#xf… 子进程无论是正常或异常退出内核都会向父进程发送信号 SIGCHILD.因为无论是使用wait函数阻塞还是使用waitpid(得循环判断都会将父进程阻塞住而不能执行别的操作所以如果父进程还需要执行别的操作就将wait/waitpid函数置于信号捕捉函数中就可以解决这个问题了当然也可以在父进程中单独起个线程来解决。 wait函数、waitpid函数每次都只能回收一个子进程。 参考该文。 wait函数是通过waitpid函数封装的 static inline pid_t wait(int * wait_stat) {     return waitpid(-1,wait_stat,0); } 1、区别1返回值的区别 wait函数只有两个返回值 成功返回回收的子进程id; 失败返回-1errno被置为ECHILD。调用进程没有子进程调用就会失败wait函数用这个条件来判断是否还有子进程没有回收), waitpid函数的第三个参数设置为WNOHANG 时返回值相较wait多了一种返回值waitpid发现当前进程在运行没有已退出的子进程可收集则立即返回返回值为0当所有的子进程都已回收则返回-1.这一点与wait是一样的同样可以根据这个参数来判断是否还有子进程没回收 2、区别2 wait函数会阻塞等待子进程的退出。 waitpid函数当第三个参数使用WNOHANG时无子进程退出也会立刻返回返回值为0 3、回收多个子进程 使用waitpid来循环回收子进程不需要知道子进程的数量 方法一使用信号,在捕捉函数中调用waitpid 此处使用了信号的形式来else if (pid 0) {Close(connfd);signal(SIGCHLD,wait_child);} main函数外定义回调函数void wait_child(int signo) {while(watipid(0,NULL,WNOHANG0); //大于0则继续回收return; } 方法二直接在父进程中调用waitpid,参考该文。 while(1) /*无限循环保证所有子进程全部回收*/{pid_t wpid waitpid(-1/*回收任何子进程*/, NULL, WNOHANG);if(wpid -1){break; /*如果返回-1说明已经没有子进程了退出循环*/}if(wpid 0){printf(wpid: %d\n, wpid); /*打印被回收的子进程的ID*/}}//while循环中没有使用sleep函数也就是说没有进程可回收就立马返回。//这个函数其实还可以再加一句 if(wpid0)continue; 使用wait函数来循环回收子进程wait函数是阻塞进程的,参考该文 使用wait()回收多个子进程 首先使用wait()函数来回收多个子进程我们可以在一个for循环中等待子进程的结束创建了几个子进程就for循环等待几次代码如下 /************************************************************File Name : mutipwait.cAuthor : MindtechnistCompany : MindtechnistCreate Time: 2022年05月20日 星期五 17时23分57秒 ************************************************************/ #include stdio.h #include stdlib.h #include unistd.h #include sys/types.h #include sys/wait.hint main(int argc, char* argv[]) {int i 0;pid_t pid;for(i 0; i 5; i){pid fork();if(pid 0){printf(child: %d\n, getpid());break;}}sleep(i);if(i 5) /*只有父进程可以执行到i5*/{for(i 0; i 5; i){pid_t wpid wait(NULL);printf(wpid: %d\n, wpid);}while(1){sleep(1);}}return 0; } //使用wait函数循环回收子进程是否也可以向waitpid一样可以不知道进程个数呢 这个待测试while(wait(NULL)0);
http://www.zqtcl.cn/news/602617/

相关文章:

  • 北京南站到北京站怎么走南宁美丽南方官方网站建设意见
  • 网站建设捌金手指专业5电商运营怎么推广一个新品
  • 医院网站建设企业走廊文化建设图片网站
  • 学网站建设培训机构公司网站建立费用
  • 阜宁网站制作服务商自学网站开发设计
  • 湖南建设监理工程网站设计类招聘网站
  • 门户网站建设的平台搭建长春专业网站建设推广
  • 网站建设宗旨怎么写网站建设公司外链怎么做
  • 绍兴市交通建设检测中心网站seo专业培训网络班
  • 设计国外网站有哪些玉环在哪里做网站
  • 设计网站思路如何写wordpress 修改登录
  • 网站开发php国外设计网站app吗
  • 智能响应式网站淳安县住房和城乡建设局网站
  • 招投标网站开发企业网站建设之后
  • 如何做好集团网站建设怎么做门淘宝网站
  • 医疗协助平台网站建设方案学生个人网页制作html报告
  • 专注于网站营销服务新浪云搭建wordpress
  • 免费自助建站代理鞍山招聘网最新招聘
  • 营销型类型网站有哪些类型php网站后台制作
  • 安全的网站制作公司百度app最新版本
  • 中小企业建站平台耐克网站建设策划方案
  • wordpress 后台加入链接后_网站显示是标签_不是链接wms智能仓储管理系统
  • 网站建设需要什么硬件和软件有哪些中考网络应用服务平台
  • 为什么网站权重会掉房地产开发网站建设
  • 大连seo整站优化酷播wordpress视频插件
  • 好的网页设计网站学编程要什么学历
  • 做网站公司电话福建城乡建设网站查询
  • 郑州做网站哪个公司好做二手市场类型的网站名字
  • 网站建设与维护里面的个人简历选择网站建设公司好
  • 济南浩辰网站建设公司怎么样wordpress 3.8 问题