Linux下子进程回收

Linux中有以下几个方法用于子进程回收:

1、父进程使用wait()和waitpid()函数等待子进程结束,父进程会挂起。

2、父进程fork()一个子进程,父进程退出,子进程由init进程接管。

3、父进程使用signal(SIGCHLD, SIG_IGN)通知内核忽略SIGCHLD信号,子进程结束后,由内核回收,并不再给父进程发送SIGCHLD信号。

4、父进程使用signal(SIGCHLD, proc)注册一个函数,子进程结束后,父进程收到SIGCHLD信号,在定义的proc函数中调用wait()处理。