В настоящее время я использую VisualVM, но проблема, с которой я сталкиваюсь, заключается в том, что я не могу сохранить графики, которые он создает. Мне нужно сообщить некоторые данные об использовании памяти и времени работы, хотя время работы легко получить с System.nanoTime()
. Я также пробовал профилировщик NetBeans, но это не то, что я хочу, так как я не ищу конкретные детали, которые замедляли бы его или что-то еще, так что это было бы излишним. Самая большая проблема заключается в том, что он слишком много времени на обработку. Также не позволяет мне легко захватывать/переносить данные, например VisualVM, по крайней мере, насколько я могу судить.Лучший способ измерения использования памяти в Java-программе?
В идеале лучший способ сделать это будет вызов метода, потому что тогда я смогу получить информацию намного легче, но что-то вроде VisualVM, которое на самом деле позволяет мне сохранить график, отлично. Производительность с VisualVM тоже хороша, по сравнению с профилировщиком NetBeans, хотя я полагаю, это связано с тем, что я не использовал его профилировщик.
В настоящее время я использую Ubuntu, но Windows 7 в порядке. Я бы предпочел иметь программу, которая специализируется на этом, хотя, поскольку информация, полученная от программ, которые этого не делают, скорее всего, будет включать JVM и другие вещи, которые лучше не учитывать.
Ну, по-видимому, вы можете сохранить моментальные снимки текущего сеанса и увеличить окно в VisualVM, чтобы вы могли сделать диаграммы больше, сделать снимок и сократить их ... Но это своего рода хак. Приветствуются лучшие предложения.