(PHP 4, PHP 5, PHP 7, PHP 8)
getrusage — Gets the current resource usages
$mode = 0): array|falseThis is an interface to getrusage(2). It gets data returned from the system call.
mode
       If mode is 1, getrusage will be called with
       RUSAGE_CHILDREN.
      
   Returns an associative array containing the data returned from the system
   call. All entries are accessible by using their documented field names.
   Returns false on failure.
  
| Version | Description | 
|---|---|
| 7.0.0 | This function is now supported on Windows. | 
Example #1 getrusage() example
<?php
$dat = getrusage();
echo $dat["ru_oublock"];       // number of block output operations
echo $dat["ru_inblock"];       // number of block input operations
echo $dat["ru_msgsnd"];        // number of IPC messages sent
echo $dat["ru_msgrcv"];        // number of IPC messages received
echo $dat["ru_maxrss"];        // maximum resident set size
echo $dat["ru_ixrss"];         // integral shared memory size
echo $dat["ru_idrss"];         // integral unshared data size
echo $dat["ru_minflt"];        // number of page reclaims (soft page faults)
echo $dat["ru_majflt"];        // number of page faults (hard page faults)
echo $dat["ru_nsignals"];      // number of signals received
echo $dat["ru_nvcsw"];         // number of voluntary context switches
echo $dat["ru_nivcsw"];        // number of involuntary context switches
echo $dat["ru_nswap"];         // number of swaps
echo $dat["ru_utime.tv_usec"]; // user time used (microseconds)
echo $dat["ru_utime.tv_sec"];  // user time used (seconds)
echo $dat["ru_stime.tv_usec"]; // system time used (microseconds)
?>
Note:
On Windows getrusage() will only return the following members:
"ru_stime.tv_sec"
"ru_stime.tv_usec"
"ru_utime.tv_sec"
"ru_utime.tv_usec"
"ru_majflt"(only ifmodeisRUSAGE_SELF)
"ru_maxrss"(only ifmodeisRUSAGE_SELF)If getrusage() is called with
modeset to1(RUSAGE_CHILDREN), then resource usage for threads are collected (meaning that internally the function is called withRUSAGE_THREAD).
Note:
on BeOS 2000, only the following members are returned:
"ru_stime.tv_sec"
"ru_stime.tv_usec"
"ru_utime.tv_sec"
"ru_utime.tv_usec"