memory_limit = 128M // Задаёт максимальный объем памяти в байтах, который разрешается использовать скрипту.
Нашёл функцию getrusage(), которая делает всё что требуется.
$data = getrusage();
echo $data["ru_oublock"]; // количество операций вывода блока
echo $data["ru_inblock"]; // количество операций приёма блока
echo $data["ru_msgsnd"]; // количество отправленных сообщений IPC
echo $data["ru_msgrcv"]; // количество принятых сообщений IPC
echo $data["ru_maxrss"]; // наибольший размер установленной резидентной памяти
echo $data["ru_ixrss"]; // суммарное значение размера разделяемой памяти
echo $data["ru_idrss"]; // суммарное значение размера неразделяемых данных
echo $data["ru_minflt"]; // кол. исправленных страниц (лёгкая ошибка страницы)
echo $data["ru_majflt"]; // кол.ошибочных страниц (тяжёлая ошибка страницы)
echo $data["ru_nsignals"]; // количество полученных сигналов
echo $data["ru_nvcsw"]; // количество согласованных переключений контекста
echo $data["ru_nivcsw"]; // количество несогласованных переключений контекста
echo $data["ru_nswap"]; // количество свопов
echo $data["ru_utime.tv_usec"]; // время на задачи пользователя (user time) (микросекунды)
echo $data["ru_utime.tv_sec"]; // время на задачи пользователя (user time) (секунды)
echo $data["ru_stime.tv_usec"]; // время на системные задачи (system time) (микросекунды)
Роман Юрьевич Ипатьев, опытный разработчик мне и сказал, что так как программисты народ ленивый, то ему проще обращаться к памяти, легко узнавая, что там находится, чем прослеживать роутинг переменных с начала их пути.
Роман Юрьевич Ипатьев, Мой вопрос подразумевает: как тестировать функциональную реализацию, чтобы в зависимости от затрат системных ресурсов использовать либо вызов чистильщика значений переменных-аргументов либо обращаться к памяти.
Так как я планирую выстраивать архитектуру отталкиваясь не от удобочитаемости кода, а от эффективности использования системных ресурсов.
Пример простой, но речь идёт про разницу между аргументами и обращением к свойствам:
В первом случае, после окончания работы функции, значения переменных удаляются из памяти.
Во втором случае, мы постоянно тратим память на хранение значений.
memory_limit = 128M // Задаёт максимальный объем памяти в байтах, который разрешается использовать скрипту.
Нашёл функцию getrusage(), которая делает всё что требуется.