status Alt ←

Поле memory

Информация о памяти под контролем сборщика мусора.

$status:memory

Хеш с информацией о распределении памяти (в килобайтах), находящейся под контролем сборщика мусора.

Поле Значение Детали
used Объем занятой памяти В это число не включен размер служебных данных самого сборщика мусора.
free Объем свободной памяти Свободная память скорее всего фрагментирована.
ever_allocated_since_compact Объем выделенной памяти с момента последней сборки мусора. См. memory:compact. Между сборками мусора это число только растет. Факты освобождения памяти без сборки мусора на него не влияют.
ever_allocated_since_start Объем выделенной памяти за все время обработки запроса Это число только растет. Ни факты сборки мусора, ни освобождения памяти между сборками мусора на него не влияют.

Рекомендуемый способ анализа

С помощью временного добавления вызовов

^musage[before XXX]
^musage[after XXX]

до и после интересующего участка кода представленного ниже метода

@musage[comment][v;now;prefix;message;line]
$v[$status:memory]
$now[^date::now[]]
$prefix[[^now.sql-string[]]	$env:REMOTE_ADDR:	$comment]
$message[$v.used	$v.free	$v.ever_allocated_since_compact	$v.ever_allocated_since_start	$request:uri]
$line[$prefix	$message^#0A]
^line.save[append;/musage.log]
$result[]

формируется журнал, который зафиксирует потребление ресурсов.

Входе работы Parser захватывает у операционной системы дополнительные блоки памяти по мере необходимости. Поэтому есть моменты, когда и used, и free увеличиваются. Это нормально.

Для записи журнала не рекомендуется использовать веб-пространство.