Измерение памяти и ЦП, используемых консольным приложением Java с помощью java.lang.management - PullRequest
1 голос
/ 08 июня 2011

Мне нужно измерить, сколько памяти и процессора использует мое приложение в данный момент, и мне нужно измерить это из того же самого приложения.Любые советы, как это сделать?Я использую jconsole, но не могу найти API, который позволил бы мне использовать его из консольного приложения.

Спасибо.

РЕДАКТИРОВАТЬ: Как пользователь aix рекомендуется, я использую java.lang.management для достижения своей цели.Однако у меня есть несколько вопросов по этому поводу.Это код, который я написал:

MemoryMXBean bean = ManagementFactory.getMemoryMXBean();
MemoryUsage memoryUsage = bean.getHeapMemoryUsage();
double used = (double)memoryUsage.getUsed() / (1024 * 1024); // in MB
double max = (double)memoryUsage.getMax() / (1024 * 1024); // in MB

Я звоню из приложения, которое я хочу измерить.Что именно это измеряет?Память занята всем приложением?По текущей теме?

1 Ответ

3 голосов
/ 08 июня 2011

Звучит так, как будто вы ищете API мониторинга и управления виртуальной машиной Java .

В частности, обратите внимание на MemoryMXBean и ThreadMXBean.

...