Интерпретация результатов xhprof - почему выдают отрицательные значения MemUse?
Почему он показывает отрицательное число MemUse?
1 ответ
Функции могут освободить больше памяти, чем выделяют. (Примечание: функция может освободить память, выделенную где-либо еще.)
Например, рассмотрим функцию a()
какие звонки b()
, Сказать, b()
выделяет строку или массив и возвращает его a()
который затем использует его локально, а затем a()
завершается. В этом случае, b()
выделение памяти будет +ve
, в то время как a()
Чистое распределение памяти будет -ve()
(потому что он был ответственен за освобождение памяти, выделенной в b()
).