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

网站开发感受东莞网站建设 石化

网站开发感受,东莞网站建设 石化,温州做美食网站,进行网站建设视频本文讲述了什么是孤儿进程和僵尸进程,会带来怎样的问题以及如何处理 一、孤儿进程 1)什么是孤儿进程 孤儿进程,顾名思义,就是父进程提前终止,但是子进程还在运行中,父进程无法对子进程进行监管&#…

本文讲述了什么是孤儿进程和僵尸进程,会带来怎样的问题以及如何处理

一、孤儿进程

1)什么是孤儿进程    

         孤儿进程,顾名思义,就是父进程提前终止,但是子进程还在运行中,父进程无法对子进程进行监管,子进程就成为了孤儿进程。

2)孤儿进程的危害

        孤儿进程一般来讲,不会有什么危害,因为在一个进程成为孤儿进程后,init进程(PID = 1)会接管该进程,成为该进程的父进程,并且在该进程结束后回收其资源。

        例如以下代码,子进程进入死循环,打印消息,父进程运行5s后退出,在父进程退出后,子进程变成孤儿进程,被init进程“收养”,通过对进程的监控信息可以验证这一结论。

#include <iostream>
#include <unistd.h>
#include <sys/types.h>int main()
{pid_t id = fork();//id为0,子进程if(id == 0){while(true){sleep(1);std::cout<<"this is child process"<<std::endl;}}int cnt = 5;while(cnt--){sleep(1);std::cout<<"this is father process"<<std::endl;}return 0;
}

二、僵尸进程

1)什么是僵尸进程

        僵尸进程就是,子进程运行已经结束,但是父进程没有对其资源回收,导致子进程不能彻底退出,始终停留在Zombie状态。在僵尸状态,进程表中仍然会保留僵尸进程的PCB,占用系统资源。

2)僵尸进程的危害

        僵尸进程会导致系统资源泄露,如果系统的PID已经耗尽,僵尸进程会导致操作系统无法创建新进程,同时大量的僵尸进程会拖慢系统运行速度。

int main()
{pid_t id = fork();//id为0,子进程if(id == 0){int cnt = 5;while(cnt--){sleep(1);std::cout<<"this is child process"<<std::endl;}exit(1);}while(true){sleep(1);std::cout<<"this is father process";}return 0;
}

3)僵尸进程的避免方法

3.1)主动调用wait/waitpid

        主动调用等待函数默认可以阻塞式地等待进程退出,waitpid也可以设置等待方式为WNOHANG从而实现非阻塞式等待,但是还是需要周期性检查子进程是否退出。

3.2)终止父进程

        上面讲到过,父进程被提前终止,子进程会被init“收养”,成为孤儿进程,init进程会负责回收孤儿进程的资源,终止父进程的目的就是主动让子进程变成孤儿进程,让init为该子进程回收资源。

3.3)信号处理

        在进程结束的时候,会向父进程发送SIGCHLD信号,可以在信号处理回调函数中,使用wait或者waitpid来回收资源,这样做的好处是,父进程不需要特定地等待子进程退出,而转而去执行自己的任务。还有一种方法,只在类unix系统下可用,将SIGCHLD的捕获手动设置为忽略,在收到该信号的时候,就会自动回收子进程的资源。


文章转载自:

http://SnE4kYQN.tLfzr.cn
http://xZt7Rs3w.tLfzr.cn
http://rPSzHmxK.tLfzr.cn
http://pqEKun4k.tLfzr.cn
http://WnU71yxK.tLfzr.cn
http://SxkoIDpD.tLfzr.cn
http://p7cKeU81.tLfzr.cn
http://Tvr6ZNVS.tLfzr.cn
http://J5DRlyK7.tLfzr.cn
http://XagaGdGc.tLfzr.cn
http://4uBPHCDe.tLfzr.cn
http://ZcwSbirp.tLfzr.cn
http://lzUucmDU.tLfzr.cn
http://XvyQD0eW.tLfzr.cn
http://fHEmvB9w.tLfzr.cn
http://lKDzI75v.tLfzr.cn
http://HK0OVXuV.tLfzr.cn
http://DB3MjEgh.tLfzr.cn
http://dLRjeEDO.tLfzr.cn
http://W8DKouKD.tLfzr.cn
http://aAItxDO9.tLfzr.cn
http://dAaWzaNt.tLfzr.cn
http://pLqGLHcS.tLfzr.cn
http://1LiFgoC9.tLfzr.cn
http://gTMytVqW.tLfzr.cn
http://KsTzeD6B.tLfzr.cn
http://FScoEPeg.tLfzr.cn
http://o7ZYtIad.tLfzr.cn
http://67p4vGp5.tLfzr.cn
http://4vIbcw67.tLfzr.cn
http://www.dtcms.com/wzjs/631249.html

相关文章:

  • 济南网站中企动力重庆快速网站推广
  • 网站推广排名有什么技巧jquery 个人网站
  • 涪城网站建设做网站国内阿里云虚拟主机多少钱
  • 怎么在悉尼做网站网站开发工程师怎么样
  • 网站建设中企动力最佳a4php网站开发工程
  • 什么是手机网站建设网络开发部是做什么的
  • 怎么建网站做推广360平台推广
  • 爱站关键词搜索上海建筑设计院工资
  • 网站后台建设网页设计素材分析
  • 广州白云区建设局网站wordpress占用大
  • 宜宾建设网站商城系统网站建设
  • 网站建设近五年参考文献十堰网络推广平台
  • 建设旅游网站数据库设计视频网站 wordpress主题
  • 创意型网站用dw做的网站怎么上传图片
  • wordpress输出副标题哈尔滨网站seo公司
  • 网盘 商业网站建设案例课程 下载推广网站有什么方法
  • 怎么用vps做网站丹寇服饰官方网站
  • 99到家微网站什么做的广西网站建设的公司哪家好
  • 郑州网站建设蝶动海南三亚8v1视频
  • 做有声小说网站建材网站建设 南宁
  • 在线做章网站昆明做网站建设
  • 自己电脑做网站 外网无法访问综合商城网站程序
  • 济南市建设监理有限公司网站国际公司图片
  • 秦皇岛网站建设服务苏州做公司网站
  • wordpress附件管理seo优化标题 关键词
  • 建设单位经常去哪个网站苏州手机网站建设多少钱
  • 上海专业网站建设信息图书页面设计模板
  • dedecms产品展示织梦模板(营销型网站)滨州做网站的科技公司
  • 遂宁建设网站天津画册设计公司
  • 网站售后服务国家企用信用信息公示系