版权所有 © 2014 tutorialspoint
#include <sys/types.h> #include <sys/time.h> #include <sys/resource.h> #include <sys/wait.h> pid_t wait3(int *status, int options, struct rusage *rusage); pid_t wait4(pid_t pid, int *status, int options, struct rusage *rusage);
pid_t wait3(int *status, int options, struct rusage *rusage);
pid_t wait4(pid_t pid, int *status, int options, struct rusage *rusage);
wait3() 和 wait4() 系统调用类似于 waitpid(2),但此外还会在 rusage 指向的结构中返回有关子进程的资源使用信息。
除了使用 rusage 参数外,以下 wait3() 调用
wait3(status, options, rusage);
等价于
waitpid(-1, status, options);
同样,以下
wait4() 调用
wait4(pid, status, options, rusage);
waitpid(pid, status, options);
换句话说,wait3() 等待任何子进程,而 wait4() 可用于选择要等待的特定子进程或子进程。有关更多详细信息,请参阅 wait(2)。
如果 rusage 不为 NULL,则其指向的 struct rusage 将填充有关子进程的计费信息。有关详细信息,请参阅 getrusage(2)。
与 waitpid(2) 相同。
如今不需要包含 <sys/time.h>,但这可以提高可移植性。(实际上,<sys/resource.h> 定义了 rusage 结构,其中包含在 <sys/time.h> 中定义的 struct timeval 类型的字段。)
只有在定义了 _BSD_SOURCE 时,才能使用这些函数的原型。
4.3BSD
fork (2)
getrusage (2)
sigaction (2)
signal (2)
wait (2)
广告