Go to the first, previous, next, last section, table of contents.
#include <sys/time.h> #include <sys/resource.h> int getrusage(int who, struct rusage *rusage);
This function returns information about the running process. The
structure struct rusage
is defined on <sys/resource.h>
as
follows:
struct rusage { struct timeval ru_utime; /* user time used */ struct timeval ru_stime; /* system time used */ long ru_maxrss; /* integral max resident set size */ long ru_ixrss; /* integral shared text memory size */ long ru_idrss; /* integral unshared data size */ long ru_isrss; /* integral unshared stack size */ long ru_minflt; /* page reclaims */ long ru_majflt; /* page faults */ long ru_nswap; /* swaps */ long ru_inblock; /* block input operations */ long ru_oublock; /* block output operations */ long ru_msgsnd; /* messages sent */ long ru_msgrcv; /* messages received */ long ru_nsignals; /* signals received */ long ru_nvcsw; /* voluntary context switches */ long ru_nivcsw; /* involuntary context switches */ };
Currently, the only field that is computed is ru_utime
. It is
computed as the total elapsed time used by the calling program. The
remainder of the fields are set to zero.
The who parameter must be RUSAGE_SELF
or
RUSAGE_CHILDREN
.
Zero on success, nonzero on failure.
not ANSI, not POSIX
struct rusage r; getrusage(RUSAGE_SELF, &r);
Go to the first, previous, next, last section, table of contents.