声明:int getrusage(int who, struct rusage *usage);
getrusage 函数返回当前的资源使用情况。当who 参数为 RUSAGE_SELF 时,返回当前进程的资源使用情况;为 RUSAGE_CHILDREN 时,返回状态为终止或者等待的子进程使用的资源情况。
返回的结果存在结构体 struct rusage 中:
struct rusage {
struct timeval ru_utime; /* user time used 用户态使用的时间 */
struct timeval ru_stime; /* system time used 内核态使用的时间 */
long ru_maxrss; /* maximum resident set size */
long ru_ixrss; /* integral shared 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 */
};
本文介绍了getrusage函数的功能及用法,该函数用于获取进程及其子进程的资源使用情况。文章详细解释了通过设置参数来获取不同类型的资源使用信息,并展示了如何解析返回的struct rusage结构体。
1178

被折叠的 条评论
为什么被折叠?



