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;
     };

  • 相关阅读:
    golang实现单链表
    koa中间执行机制
    vuex源码简析
    从浏览器渲染过程看重绘回流
    javascript的this
    js 设计模式:观察者和发布订阅模式
    H5 移动端 键盘遮挡焦点元素解决方案
    webpack4 css modules
    Daily,一个入门级的 React Native 应用
    javascript: 类型转换
  • 原文地址:https://www.cnblogs.com/xianzhedeyu/p/3516546.html
Copyright © 2011-2022 走看看