root/win32/getrusage.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2    +----------------------------------------------------------------------+
   3    | PHP Version 7                                                        |
   4    +----------------------------------------------------------------------+
   5    | Copyright (c) 1997-2016 The PHP Group                                |
   6    +----------------------------------------------------------------------+
   7    | This source file is subject to version 3.01 of the PHP license,      |
   8    | that is bundled with this package in the file LICENSE, and is        |
   9    | available through the world-wide-web at the following url:           |
  10    | http://www.php.net/license/3_01.txt                                  |
  11    | If you did not receive a copy of the PHP license and are unable to   |
  12    | obtain it through the world-wide-web, please send a note to          |
  13    | license@php.net so we can mail you a copy immediately.               |
  14    +----------------------------------------------------------------------+
  15    | Authors: Kalle Sommer Nielsen <kalle@php.net>                        |
  16    +----------------------------------------------------------------------+
  17  */
  18 
  19 #ifndef HAVE_GETRUSAGE_H
  20 # define HAVE_GETRUSAGE_H
  21 
  22 /*
  23  * Note
  24  * 
  25  * RUSAGE_CHILDREN is not implemented, and the RUSAGE_THREAD will 
  26  * therefore instead be used instead to emulate the behavior.
  27  */
  28 
  29 # define RUSAGE_SELF            0
  30 # define RUSAGE_CHILDREN        1
  31 
  32 # define RUSAGE_THREAD          RUSAGE_CHILDREN
  33 
  34 /*
  35  * Implementation support
  36  *
  37  *  RUSAGE_SELF
  38  *              ru_utime
  39  *              ru_stime
  40  *              ru_majflt
  41  *              ru_maxrss
  42  *
  43  *  RUSAGE_THREAD
  44  *              ru_utime
  45  *              ru_stime
  46  *
  47  * Not implemented:
  48  *              ru_ixrss                (unused)
  49  *              ru_idrss                (unused)
  50  *              ru_isrss                (unused)
  51  *              ru_minflt
  52  *              ru_nswap                (unused)
  53  *              ru_inblock
  54  *              ru_oublock
  55  *              ru_msgsnd               (unused)
  56  *              ru_msgrcv               (unused)
  57  *              ru_nsignals             (unused)
  58  *              ru_nvcsw
  59  *              ru_nivcsw
  60  */
  61 
  62 struct rusage
  63 {
  64         /* User time used */
  65         struct timeval ru_utime;
  66 
  67         /* System time used */
  68         struct timeval ru_stime;
  69 
  70         /* Integral max resident set size */
  71         zend_long ru_maxrss;
  72 
  73         /* Page faults */
  74         zend_long ru_majflt;
  75 #if 0
  76         /* Integral shared text memory size */
  77         zend_long ru_ixrss;
  78 
  79         /* Integral unshared data size */
  80         zend_long ru_idrss;
  81 
  82         /* Integral unshared stack size */
  83         zend_long ru_isrss;
  84 
  85         /* Page reclaims */
  86         zend_long ru_minflt;
  87 
  88         /* Swaps */
  89         zend_long ru_nswap;
  90 
  91         /* Block input operations */
  92         zend_long ru_inblock;
  93 
  94         /* Block output operations */
  95         zend_long ru_oublock;
  96 
  97         /* Messages sent */
  98         zend_long ru_msgsnd;
  99 
 100         /* Messages received */
 101         zend_long ru_msgrcv;
 102 
 103         /* Signals received */
 104         zend_long ru_nsignals;
 105 
 106         /* Voluntary context switches */
 107         zend_long ru_nvcsw;
 108 
 109         /* Involuntary context switches */
 110         zend_long ru_nivcsw;
 111 #endif
 112 };
 113 
 114 PHPAPI int getrusage(int who, struct rusage *usage);
 115 
 116 #endif
 117 

/* [<][>][^][v][top][bottom][index][help] */