я использовал это, чтобы следить за виртуальной и RSS памяти и количество собственных потоков:
for((i=0;;++i)) { echo $i ` grep VmSize /proc/\21009/status | grep -o '[0-9]*'` ` grep VmRSS /proc/\21009/status | grep -o '[0-9]*'` ` grep Threads /proc/\21009/status | grep -o '[0-9]*'` ; sleep 1 || break; } > data
Он создает файл, разделенный пробелами, который вы можете легко импортировать в свой любимый инструмент для работы с электронными таблицами.
Вам необходимо заменить 21009 идентификатором процесса Java-процесса, который вы хотите контролировать, конечно.
Это не полностью отвечает на мой вопрос, поскольку я хотел бы иметь возможность взглянуть только на то, что выделил материал NIO, а не на всю память, используемую JVM, хотя этот маленький скрипт уже доказал мне, что он достаточно полезен для просмотра что в программе, которую я исследовал, нет утечек памяти.
Спасибо за ссылку, очень интересно! –