Linux下的exit函数和wait函数

本文详细介绍了进程控制中的exit、wait及waitpid函数的功能与使用方法。exit函数用于终止进程运行;wait与waitpid函数则用于父进程等待子进程结束。文章还提到了僵尸进程的概念及其在长期运行程序中需要注意的问题。

exit函数

无论在程序中的什么位置,只要执行到exit系统调用,进程就会停止剩下的所有操作,清除包括PCB在内的各种数据结构,并终止本进程的运行。

如果一个进程已经终止,而其父进程没有对其进行处理(获得终止信息,释放资源),那么它将变成僵尸进程,在编写长期运行的程序时,尤其要注意这一点。

wait函数

wait()会暂时停止目前进程的执行,直到有信号来到或子进程结束。如果在调用wait()时子进程已经结束,则wait()会立即返回子进程结束状态值。

waitpid()

#include<sys/types.h>
#include<sys/wait.h>
函数定义 pid_t waitpid(pid_t pid, int *status, int options);
函数说明:waitpid()会暂时停止目前进程的执行,直到有信号来到或子进程结束。

 

 创建waitpid.c文件并运行,如下

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值