zoukankan      html  css  js  c++  java
  • linux下getrusage()

    #include <sys/resource.h>

    /* Return resource usage information on process indicated by WHO
    and put it in *USAGE. Returns 0 for success, -1 for failure. */
    extern int getrusage (__rusage_who_t __who, struct rusage *__usage) __THROW;

    参数: 

    who:可能选择有

      RUSAGE_SELF:获取当前进程的资源使用信息。

      RUSAGE_CHILDREN:获取子进程的资源使用信息。

    usage:指向存放资源使用信息的结构指针

    #include <bits/resources.>

    /* Structure which says how much of each resource has been used. */
    struct rusage
    {
     /* Total amount of user time used. */
     struct timeval ru_utime;
     /* Total amount of system time used. */
     struct timeval ru_stime;
     /* Maximum resident set size (in kilobytes). */
     long int ru_maxrss;
     /* Amount of sharing of text segment memory
     with other processes (kilobyte-seconds). */
     long int ru_ixrss;
     /* Amount of data segment memory used (kilobyte-seconds). */
     long int ru_idrss;
     /* Amount of stack memory used (kilobyte-seconds). */
     long int ru_isrss;
     /* Number of soft page faults (i.e. those serviced by reclaiming
     a page from the list of pages awaiting reallocation. */
     long int ru_minflt;
     /* Number of hard page faults (i.e. those that required I/O). */
     long int ru_majflt;
     /* Number of times a process was swapped out of physical memory. */
     long int ru_nswap;
     /* Number of input operations via the file system. Note: This
     and `ru_oublock' do not include operations with the cache. */
     long int ru_inblock;
     /* Number of output operations via the file system. */
     long int ru_oublock;
     /* Number of IPC messages sent. */
     long int ru_msgsnd;
     /* Number of IPC messages received. */
     long int ru_msgrcv;
     /* Number of signals delivered. */
    long int ru_nsignals;
    /* Number of voluntary context switches, i.e. because the process
    gave up the process before it had to (usually to wait for some
    resource to be available). */
    long int ru_nvcsw;
    /* Number of involuntary context switches, i.e. a higher priority process

    became runnable or the current process used up its time slice. */
     long int ru_nivcsw;
     };

  • 相关阅读:
    线程同步总结
    Map,HashMap,LinkedHashMap,TreeMap比较和理解
    实现自定义注解
    SSM框架中写sql在dao文件中以注解的方式
    SSM框架中写sql在xml文件中
    自由创蚁-青少年积木式编程平台正式发布了!
    回调函数
    全面理解Javascript闭包和闭包的几种写法及用途
    hover伪类
    添加背景音乐
  • 原文地址:https://www.cnblogs.com/xianzhedeyu/p/3516546.html
Copyright © 2011-2022 走看看