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

如何自己写一个网站张家港质监站网址

如何自己写一个网站,张家港质监站网址,php模拟登陆wordpress,万网空间官方网站文章目录 进程控制#xff08;二#xff09;进程等待wait函数waitpid函数wait/waitpid获取子进程状态码的过程进程等待相关的宏 总结 进程控制#xff08;二#xff09; 延续对于上文进程结束#xff0c;我们继续对于进程控制进行学习#xff0c;本文我们主要是对于进程… 文章目录 进程控制二进程等待wait函数waitpid函数wait/waitpid获取子进程状态码的过程进程等待相关的宏 总结 进程控制二 延续对于上文进程结束我们继续对于进程控制进行学习本文我们主要是对于进程等待进行学习进程等待我们在前文初步接触进程的时候我们知道进程等待是指我们在运行该进程的时候在等待资源当有了资源分配后便可以运行该进程在本文中我们认识的进程等待是指子进程退出时先进入僵尸状态然后父进程进行等待wait/waitpid来获取子进程退出信息这个过程叫做进程等待。 进程等待 进程等待是子进程退出信息被父进程接收时父进程处于等待状态的一种描述。 进程等待是指通过系统调用wait/waitpid来进行对子进程进行状态检测与回收的功能。 子进程退出时如果父进程没有接收信息那么会导致僵尸进程的问题造成内存泄漏所以父进程必须通过进程等待来回收子进程退出信息。必要通过回收子进程的退出信息也可以知道子进程退出码以及是否出现异常status。可选 所以我们必须要实现进程等待防止内存泄漏对于得到的子进程退出信息我们可以选择性的利用可有可无看自己需求。 wait函数 wait函数可以实现进程等待只有一个参数status输出型参数可以获得子进程退出信息 wait函数在2号手册上头文件也可以表明wait函数以及waitpid函数是系统调用接口通过该函数来访问操作系统使得操作系统对于子进程进行回收处理。 core dump以后会用到现在不需要掌握只需要知道这是用来进行调试的。 #includestdio.h #includesys/types.h #includesys/wait.h #includeunistd.h #includestdlib.h#define N 10void RunChild() {int cnt5;while(cnt){printf(Child pid: %d, parent pid: %d\n,getpid(),getppid());//获取pid和ppidsleep(1);cnt--;}//printf(Child pid: %d, parent pid: %d\n,getpid(),getppid());//获取pid和ppid//sleep(15); }int main() {//实现创建子进程并对于子进程进行等待for(int i0;iN;i){pid_t idfork();//创建子进程if(id0){RunChild();exit(i);//退出码}//父进程执行下面信息printf(create Child proc : %d success\n,id);}sleep(10);return 0; }上述代码我们并没有是wait会造成内存泄漏下面我们来通过父进程来接收子进程的退出信息。 #includestdio.h #includesys/types.h #includesys/wait.h #includeunistd.h #includestdlib.h#define N 10void RunChild() {int cnt5;while(cnt){printf(Child pid: %d, parent pid: %d\n,getpid(),getppid());//获取pid和ppidsleep(1);cnt--;}//printf(Child pid: %d, parent pid: %d\n,getpid(),getppid());//获取pid和ppid//sleep(15); }int main() {//实现创建子进程并对于子进程进行等待for(int i0;iN;i){pid_t idfork();//创建子进程if(id0){RunChild();exit(i);//退出码}//父进程执行下面信息//wait进程等待printf(create Child proc : %d success\n,id);}//进程等待for(int i0;iN;i){//会实现进程的等待pid_t idwait(NULL);//wait等待是随机的等待还没有被接收信息的子进程有几个子进程就需要等几次。//int status0;//pid_t idwait(status);//传地址操作系统来进行存储子进程退出信息if(id0){//printf(wait %d success\n ; exit sig: %d\n,id,WEXITSTATUS(status));printf(wait %d success\n,id);}}return 0; }waitpid函数 waitpid函数其拥有三个参数功能相较于wait更多可以认为waitpid可以包含wait的功能wait的功能比较单一智能获取状态码status而且是随机等待子进程。 #include sys/types.h #include sys/wait.hpid_t waitpid(pid_t pid, int* status, int options);参数介绍 返回值pid_t 大于0表示等待子进程成功返回值是子进程的pid小于0表示等待子进程失败等于0表示等待条件还没有就绪此时父进程可以做自己的事情 pid参数 大于0表示等待指定的子进程pid -1 表示等待随机子进程 status参数 NULL表示不需要子进程的状态码反之作为输出型参数操作系统将子进程退出信息写入status中 options参数 0表示阻塞等待WNOHONG表示非阻塞等待 wait/waitpid获取子进程状态码的过程 wait和waitpid都是系统调用为什么要通过系统调用函数而不是库函数来实现该功能这是因为由于进程具有独立性相互不影响所以一般的函数无法访问到另一进程的内容而系统调用可以在全局上操作系统的角度来找到子进程PCB得到状态码 等待流程 子进程运行完毕后进入僵尸状态Z将退出码信息存储到子进程PCB中exit_code,exit_signal,释放代码以及数据保留task_struct结构体信息。父进程通过wait/waitpid通过系统调用得到子进程PCB中的退出信息将推出信息以位图的方式写入到int类型的status参数从而父进程得到子进程的推出信息。 exit_code表示退出码 exit_signal表示结束信号也就是判断是否异常如果为0表示正常如果非零那就是接收了终止信号 kill -num其中numexit_signal 实现方式 exit_signal status0x7F WIFEXITEDstatus exit_code status80xFF WEXITSTATUSstatus 进程等待相关的宏 WEXITSTATUSstatus表示输出退出码(exit_code) WNOHONG表示非阻塞等待用于waitpid的option参数。 WIFEXITED(status)通过状态码表示子进程是否正常结束是否异常如果正常返回ture 总结 进程等待是父进程必须要完成的事情是为了防止内存泄漏也是为了知道子进程完成任务情况由状态码得出结论主要是了解wait/waitpid函数以及status参数的构成为什么能表示进程的三种退出情况以及waitpid函数的非阻塞等待宏WNOHONG还有退出码WEXITSTATUS还有判断子进程是否正常退出的宏命令WIFEXITED。
http://www.hkea.cn/news/14553479/

相关文章:

  • 社交网站开发技术岗网站开发语言p
  • 网站域名续费制作游戏编辑器app
  • 公司网站如何制作设计单页加盟网站模板
  • 怎样宣传网站做网站项目
  • 网站备案需要网站建设完毕不郑州做网站狼牙
  • 西安公司网站如何建立wordpress 360 google
  • 常用的网站建设技术包括天津建设工程信息网官网平台
  • 做网页用的网站no.7 wordpress 破解
  • 电子商务战略选择 网站建设建议品质网站设
  • 论坛网站模板免费下载营销策划有限公司经营范围
  • 昆明网站建设优化技术企业网站建设有几种形式
  • 农业信息网站 建设学做网站的软件
  • 制作个网站需要多少钱高校二级网站建设要求
  • 目前会展相关网站的建设情况怎么导入wordpress模板
  • 上线了网站网站建设优化开发公司哪家好
  • 河南省交通基本建设质量检测监督站网站免备案免费空间
  • 东莞网站建设报价王串场街网站建设公司
  • asp.net网站设计怎么做网络推广网站
  • 个人网站做微擎wordpress服务器镜像
  • 贵州省建设职业技术学院网站那个网站可以做软件出售的
  • 学做网站可以赚钱吗荆门网站制作公司
  • 国外好的网站主机屋网站在那注册
  • 桂林seo排名天津网站优化步骤
  • 通过平台建网站摄影设计说明万能模板
  • 申报湖南创新型省份建设专项网站外贸set是什么意思
  • 网站开发怎么使用sharepoint网页设计图片垂直对齐方式为顶端
  • 凡科网站建站教程东莞规划局官方网站
  • 目前国内做情趣最好的网站聊城营销网站建设价格
  • 现在什么网站比较火做推广江苏网站建设简介模板
  • 沈阳建站模板系统包括WordPress文章id连号