У меня есть скрипт, который выполняет большую обработку некоторых строк в БД (их много). Скрипт использует множество объектов и некоторые внутренние механизмы кэширования.
В какой-то момент я освобождаю весь используемый кэш, чтобы не использовать всю доступную оперативную память только для кэшированных элементов, но используемая память не уменьшается.
Я использовал memory_get_usage(true)
, чтобы определить, сколько оперативной памяти занимает скрипт, но я понятия не имею, как определить, какие объекты все еще находятся в оперативной памяти и все еще потребляют память.
Простое решение состоит в том, чтобы вернуться назад ко всем объектам и убедиться, что все переменные еще не активны и указывают на них, и что все внутренние кэши фактически свободны, и тестировать и тестировать и тестировать снова, но я ищет инструмент или вызов функции , который сказал бы мне, что «переменная Y в классе Z имеет 90% вашей оперативной памяти», без необходимости знать и связываться со всеми внутренними объектами, которые я использую в этом сценарий.