#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);
Test delle funzioni e requisiti delle macro per glibc (vedere feature_test_macros(7)):
wait3():
_BSD_SOURCE
wait4():
_BSD_SOURCE || _XOPEN_SOURCE >= 500
Oltre ad usare l'argomento rusage , la seguente chiamata wait3():
wait3(status, options, rusage);
è equivalente a:
waitpid(-1, status, options);
Similmente la seguente chiamata
wait4():
wait4(pid, status, options, rusage);
è equivalente a:
waitpid(pid, status, options);
In altre parole,
wait3()
aspetta qualunque figlio, mentre
wait4()
può essere usata per selezionare un figlio specifico, o figli, da aspettare.
Vedere
wait(2)
per maggiori dettagli.
Se rusage non è NULL, la struct rusage al quale punta verrà riempita con informazioni di autenticazione sul figlio. Vedere getrusage(2) per i dettagli.