Получает информацию об использовании текущего ресурса

# getrusage

(PHP 4, PHP 5, PHP 7, PHP 8)

getrusage — Получает информацию об использовании текущего ресурса

### Описание

function getrusage(int `$mode` = 0): array|false

Это интерфейс к getrusage(2). Функция получает данные, возвращаемые из системного вызова.

### Список параметров

`mode`

  Если аргумент `mode` равен 1, getrusage будет вызвана с `RUSAGE_CHILDREN`.

### Возвращаемые значения

Возвращает ассоциативный массив, содержащий данные возвращённые из системного вызова. Имена элементов соответствуют документированным именам полей. Возвращает `false` в случае возникновения ошибки.

### Примеры

Пример #1 Пример использования getrusage()

    <?php
    $dat = getrusage();
    echo $dat["ru_oublock"];       // количество операций вывода блока
    echo $dat["ru_inblock"];       // количество операций приёма блока
    echo $dat["ru_msgsnd"];        // количество отправленных сообщений IPC
    echo $dat["ru_msgrcv"];        // количество принятых сообщений IPC
    echo $dat["ru_maxrss"];        // наибольший размер установленной резидентной памяти
    echo $dat["ru_ixrss"];         // суммарное значение размера разделяемой памяти
    echo $dat["ru_idrss"];         // суммарное значение размера неразделяемых данных
    echo $dat["ru_minflt"];        // количество исправленных страниц (лёгкая ошибка страницы)
    echo $dat["ru_majflt"];        // количество ошибочных страниц (тяжёлая ошибка страницы)
    echo $dat["ru_nsignals"];      // количество полученных сигналов
    echo $dat["ru_nvcsw"];         // количество согласованных переключений контекста
    echo $dat["ru_nivcsw"];        // количество несогласованных переключений контекста
    echo $dat["ru_nswap"];         // количество свопов
    echo $dat["ru_utime.tv_usec"]; // время на задачи пользователя (user time) (микросекунды)
    echo $dat["ru_utime.tv_sec"];  // время на задачи пользователя (user time) (секунды)
    echo $dat["ru_stime.tv_usec"]; // время на системные задачи (system time) (микросекунды)
    echo $dat["ru_stime.tv_sec"];  // время на системные задачи (system time) (секунды)
    ?>

### Примечания

> Замечание:

> В Windows getrusage() возвращает только следующее:

> - `"ru_stime.tv_sec"`
> - `"ru_stime.tv_usec"`
> - `"ru_utime.tv_sec"`
> - `"ru_utime.tv_usec"`
> - `"ru_majflt"` (только если `mode` - `RUSAGE_SELF`)
> - `"ru_maxrss"` (только если `mode` - `RUSAGE_SELF`)

> Если getrusage() вызвана с `mode` равным `1` (`RUSAGE_CHILDREN`), то будет собираться информация по использованию ресурсов потоками (что означает, что внутри функция будет вызываться с `RUSAGE_THREAD`).

> Замечание:

> В BeOS 2000, возвращается только следующее:

> - `"ru_stime.tv_sec"`
> - `"ru_stime.tv_usec"`
> - `"ru_utime.tv_sec"`
> - `"ru_utime.tv_usec"`

### Смотрите также

- Страница системной документации getrusage(2)

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open