进程管理:等待子进程终止与用户组管理
1. 等待终止的子进程
在进程管理中,等待子进程终止是一项重要的操作。 waitid() 函数提供了一些有用的语义,在调用 waitid() 成功后, siginfo_t 结构体中的部分字段会被填充,具体如下:
| 字段 | 说明 |
| ---- | ---- |
| si_pid | 子进程的 pid |
| si_uid | 子进程的 uid |
| si_code | 根据子进程的不同状态(终止、因信号死亡、因信号停止、因信号继续)分别设置为 CLD_EXITED 、 CLD_KILLED 、 CLD_STOPPED 或 CLD_CONTINUED |
| si_signo | 设置为 SIGCHLD |
| si_status | 如果 si_code 是 CLD_EXITED ,该字段是子进程的退出码;否则,是导致子进程状态改变的信号编号 |
waitid() 函数成功时返回 0,失败时返回 -1,并且 errno 会被设
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



