版权所有 © 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)
广告