C语言waitpid函数
友链
#include <unistd.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <string.h>
#include <sys/wait.h>
int main(int argc, char *argv[])
{/*#include <sys/types.h>#include <sys/wait.h>pid_t wait(int *wstatus);pid_t waitpid(pid_t pid, int *wstatus, int options);回收指定进程号的进程如果pid参数为0,那么就表示回收当前进程组的所有进程如果pid为-1,就表示回收所有的子进程,不管是不是在同一个进程组如果pid<-1,回收某个进程组的所有子进程,pid的绝对值就是组idoptions参数用于设置阻塞或者非阻塞0是阻塞WNOHANG是非阻塞返回值如果大于0就是被回收的子进程的pid=0表示还有子进程=-1表示已经没有子进程了*/pid_t pid;// 现在有一个父进程,我们创建5个子进程for (int i = 0; i < 5; i++){pid = fork();if (pid == 0)break; //防止子进程再创建子进程}if (pid > 0){while (1){sleep(1);printf("PARENT, pid: %d\n", getpid());int st;int ret = waitpid(-1, &st, WNOHANG);if (ret == -1){break;}// 表示还有子进程else if (ret == 0){continue;}// 表示回收了一个子进程else if (ret > 0){if (WIFEXITED(st)){printf("退出的状态码是: %d\n", WEXITSTATUS(st));}if (WIFSIGNALED(st)){printf("被 %d 信号终止了\n", WTERMSIG(st));}printf("child dead, pid = %d\n", ret);}}}if (pid == 0){while (1){sleep(1);printf("CHILD, pid: %d\n", getpid());}}return 0;
}
C语言waitpid函数相关推荐
- C语言API函数大全(转载)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/u010258235/article/d ...
- c语言system返回信息,理解c语言system函数的返回值
作者:新浪微博(@NP等不等于P) 计算机学习微信公众号(jsj_xx) c语言中的system函数可以说是程序执行时的一道重生之门,其重生妙效犹如我们之前<透析硬链接和软链接的区别>一文 ...
- Linux wait() 和 waitpid()函数介绍
转载自http://blog.csdn.net/wallwind/article/details/6998602 当一个进程正常或异常终止的时候,内核就像其父进程发送SIGCHLD信号,因为子进程是个 ...
- 写的函数符号表里没有_你有没有想过,C语言 main 函数到底为啥这么写?
但凡是学过C语言的人,都知道要先写main函数,然而很多时候我们看到的main函数却各有差异,这究竟是为啥?哪种是对的呢?今天我们就来聊聊main函数. 那么main函数一共有多少个版本呢? 1.ma ...
- R语言str_trim函数去除字符串中头部和尾部的空格
R语言str_trim函数去除字符串中头部和尾部的空格 目录 R语言str_trim函数去除字符串中头部和尾部的空格 #导入包和库 #仿
- R语言sqrt函数为数值开平方根实战
R语言sqrt函数为数值开平方根实战 目录 R语言sqrt函数为数值开平方根实战 #基本语法 #sqrt函数开平方根
- R语言数学函数:abs绝对值、sqrt平方根、ceiling向上近似整数、floor向下近似整数、trunc去除小数部分、round近似到指定小数位、signif近似到有效数字、三角函数、指数、对数
R语言数学函数:abs绝对值.sqrt平方根.ceiling向上近似整数.floor向下近似整数.trunc去除小数部分.round近似到指定小数位.signif近似到有效数字.三角函数.指数.对数 ...
- R语言sd函数计算数值标准差实战(Standard Deviation)
R语言sd函数计算数值标准差实战(Standard Deviation) 目录 R语言sd函数计算数值标准差实战(Standard Deviation) #基本语法 #sd
- R语言optimize函数一维优化实战
R语言optimize函数一维优化实战 目录 R语言optimize函数一维优化实战 #基础语法 #优化用户自定义的函数
最新文章
- Neutron — Hierarchical Port Binding(层次化端口绑定)
- abap submit 的使用方法
- Linux 之二 Linux 多线程
- JavaWeb之国际化
- Deltix Round, Summer 2021 (open for everyone, rated, Div. 1 + Div. 2)
- Spring Data JPA 从入门到精通~JpaSpecificationExecutor示例
- Java-主方法main()的解析
- 深度解码企业文化体系
- 快速掌握用户分层模型(RFM)的使用方法|【业务模型】
- Go面向对象---音乐库案例
- html5 video断点续播,vue-video-player 断点续播的实现
- java实现三方登陆:微信登陆功能的实现
- 【5G模组】讨论RSSI,RSRP,RSRQ and SINR
- TSP问题—Hopfield神经网络算法实现
- 目前有哪些比较好的App流量变现的方法?
- RSA 2022/8/17
- UidChange和后台行为受限
- 【UEFI/BIOS】UEFI Shell Command (UEFI Shell 命令)篇目一
- springboot 打jar包时分离配置文件
- 信管——苦命的专业,到底是“技术”,还是“管理”?