(PHP 4, PHP 5, PHP 7)
getrusage — Получает информацию об использовании текущего ресурса
$who
= 0
] ) : arrayЭто интерфейс к getrusage(2). Функция получает данные, возвращаемые из системного вызова.
who
Если аргумент who
равен 1, getrusage будет вызвана с
RUSAGE_CHILDREN
.
Возвращает ассоциативный массив, содержащий данные возвращенные из системного вызова. Имена элементов соответствуют документированным именам полей.
Пример #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) (микросекунды)
?>
Версия | Описание |
---|---|
7.0.0 | Добавлен поддержка этой функции в Windows. |
Замечание:
В Windows getrusage() возвращает только следующее:
- "ru_stime.tv_sec"
- "ru_stime.tv_usec"
- "ru_utime.tv_sec"
- "ru_utime.tv_usec"
- "ru_majflt" (только если
who
-RUSAGE_SELF
)- "ru_maxrss" (только если
who
-RUSAGE_SELF
)Если getrusage() вызвана с
who
равным 1 (RUSAGE_CHILDREN
), то будет собираться информация по использованию ресурсов потоками (что означает, что внутри функция будет вызываться сRUSAGE_THREAD
).
Замечание:
В BeOS 2000, возвращается только следующее:
- "ru_stime.tv_sec"
- "ru_stime.tv_usec"
- "ru_utime.tv_sec"
- "ru_utime.tv_usec"