(PHP 4, PHP 5, PHP 7, PHP 8)
getrusage — Получает информацию об использовании текущего ресурса
$mode
= 0): array|falseЭто интерфейс к getrusage(2). Функция получает данные, возвращаемые из системного вызова.
mode
Если аргумент mode
равен 1, getrusage будет вызвана с
RUSAGE_CHILDREN
.
Возвращает ассоциативный массив, содержащий данные возвращённые из системного
вызова. Имена элементов соответствуют документированным именам полей.
Возвращает false
в случае возникновения ошибки.
Версия | Описание |
---|---|
7.0.0 | Добавлен поддержка этой функции в Windows. |
Пример #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"