getrusage - get information about resource utilization
The getrusage() function shall provide measures of the resources used by the current process or its terminated and waited-for child processes. If the value of the who argument is RUSAGE_SELF, information shall be returned about resources used by the current process. If the value of the who argument is RUSAGE_CHILDREN, information shall be returned about resources used by the terminated and waited-for children of the current process. If the child is never waited for (for example, if the parent has SA_NOCLDWAIT set or sets SIGCHLD to SIG_IGN), the resource information for the child process is discarded and not included in the resource information provided by getrusage().
The r_usage argument is a pointer to an object of type struct rusage in which the returned information is stored.
Upon successful completion, getrusage() shall return 0; otherwise, -1 shall be returned and errno set to indicate the error.
The getrusage() function shall fail if:
- The value of the who argument is not valid.
The following example returns information about the resources used by the current process.#include <sys/resource.h> ... int who = RUSAGE_SELF; struct rusage usage; int ret;
ret = getrusage(who, &usage);
exit(), sigaction(), time() , times(), wait(), the Base Definitions volume of IEEE Std 1003.1-2001, <sys/resource.h>
First released in Issue 4, Version 2.
Moved from X/OPEN UNIX extension to BASE.