что такое профилирование java

Java VisualVM представляет данные для местных применений и удаленных приложений на вкладке, определенной для того приложения. У Вас могут быть многократные открытые вкладки приложения. Каждая вкладка приложения содержит подвкладки, которые выводят на экран различные типы информации о приложении.

Профилирование приложений

Вкладка Profiler приложения позволяет Вам запустить и остановить сеанс профилирования местного применения. Профилирующие результаты выводятся на экран на вкладке Profiler. Можно использовать панель инструментов, чтобы обновить результаты профилирования, вызвать сборку «мусора» и сохранить данные профилирования.

По умолчанию инструмент профилирования не работает, пока Вы не готовы профилировать приложение. Можно выбрать из следующих опций профилирования:

Когда Вы запускаете сеанс профилирования, Java, VisualVM присоединяет к местному применению и начинает собирать данные профилирования. Когда профилирование результатов доступно, они автоматически выводятся на экран на вкладке Profiler.

Используя панель инструментов

Можно использовать следующие кнопки на панели инструментов Profiling Results, чтобы работать с профилированием результатов:

Фильтрация результатов профилирования

Поле фильтра ниже результатов профилирования позволяет Вам фильтровать выведенные на экран результаты согласно имени метода. Чтобы фильтровать результаты, введите термин в поле фильтра имени метода, выберите который, фильтруя метод, чтобы использовать и нажать Возврат. Можно видеть и выбрать предыдущие сроки фильтра, щелкая по стрелке направо от поля фильтра имени метода.

Изменение настроек профилирования

Java инструмент профилирования VisualVM предоставляет настройки по умолчанию для того, чтобы профилировать приложения. Можно просмотреть настройки по умолчанию, устанавливая флажок Settings на вкладке Profiler. Можно изменить настройки профилирования, когда никакой сеанс профилирования не происходит.

Профилирование ЦП

Эта команда профиля возвращает подробные данные по производительности ЦП на уровне метода (время выполнения), показывая полное время выполнения и число вызовов для каждого метода. Анализируя производительность приложения, Java инструменты VisualVM все методы профилируемого приложения. Потоки испускают «событие» записи метода, вводя метод и генерируют соответствующее «событие» выхода метода, выходя из метода. Оба из этих событий содержат метки времени. Эти данные обрабатываются в режиме реального времени.

Снимок экрана вкладки Profiler, показывая результаты профилирования ЦП

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Снимок экрана вкладки Profiler, показывая настройки профилирования ЦП

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Профилирование памяти

Когда Вы анализируете использование памяти, Java VisualVM начинает инструментовать загруженные классы и выводит на экран общее количество объектов, выделенных каждым классом (включая классы массива) в таблице. Для каждого класса в настоящий момент загруженный класс в виртуальной машине Java (JVM) результаты профилирования выводят на экран размер и число объектов, выделенных начиная с запущенного сеанса профилирования. Результаты автоматически обновляются, поскольку новые объекты выделяются и поскольку новые классы загружаются.

Java VisualVM выводит на экран число объектов как абсолютное число и как процент. Выделенные байты также выводятся на экран как график, представляющий процент байтов так же как общее количество байтов, выделенных каждым классом.

Снимок экрана вкладки Profiler, показывая результаты профилирования памяти

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Снимок экрана вкладки Profiler, показывая настройки профилирования памяти

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Взятие Снимков Профилировщика

Java VisualVM позволяет Вам взять снимки профилировщика, чтобы получить результаты сеанса профилирования. Снимок профилировщика получает результаты в настоящее время, снимок берется. Чтобы взять снимок, нажмите кнопку Snapshot of Collected Results Взятия на панели инструментов, в то время как сеанс профилирования происходит. Когда Вы берете снимок, снимок открывается как вкладка на вкладке приложения. Узел для снимка также появляется под узлом приложения в окне Приложений.

Снимок экрана снимка профилирования памяти

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Снимок экрана снимка профилирования ЦП

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Для больше о снимках профилировщика, см. следующий документ:

Источник

Apache NetBeans 12.5

IDE NetBeans включает многофункциональный инструмент профилирования, который позволят получить важные сведения о режиме работы приложения во время выполнения. Средство профилирования NetBeans позволяет просто отслеживать состояния потоков, производительность ЦП и использование памяти приложением в среде IDE; оно потребляет сравнительно немного ресурсов.

Этот вводный документ — обзор средства профилирования, входящего в состав среды IDE, и руководство, позволяющее быстро приступить к профилированию проектов NetBeans. Этот документ предназначен продемонстрировать различные задачи профилирования, доступные в среде IDE, и результаты профилирования, которые можно получить при профилировании проекта. В ней не рассматриваются все функции профилирования среды IDE, также не освещена интерпретация результатов профилирования для разрешения определенных проблем производительности, которые могут возникнуть в приложении.

В этом документе будет демонстрироваться использование средства профилирования для получения данных профилирования о примере приложения Anagram Game, простого приложения Java, входящего в состав среды IDE. Хотя Anagram Game — это очень простой проект приложения Java, при профилировании больших и более сложных приложений Java, а также проектов корпоративных и веб-приложений желательно выполнять те же действия.

В этом документе показано использование среды IDE для профилирования приложения и получения следующих результатов профилирования:

Поведение приложения при выполнении

Время ЦП, используемое методами приложения

Кроме того, в этом документе показано получение и сравнение снимков результатов профилирования.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Создание примера проекта

Начало работы

Предпосылки

Предполагается, что читатель обладает базовыми знаниями по следующим технологиям или опытом программирования с их использованием:

Программирование на Java

Программное обеспечение, требуемое для работы с данным учебным курсом.

Для работы с этим учебным курсом на компьютере должно быть установлено следующее программное обеспечение.

Примечания.

Инструмент профилирования включен в комплект с IDE NetBeans и для начала профилирования приложения не требуется дополнительная настройка.

Если используется IDE NetBeans 7.2 или более ранняя версия, см. раздел Введение в профилирование приложений Java в IDE NetBeans 7.2

Первое профилирование

При первом использовании средства профилирования среде IDE необходимо выполнить некоторые начальные операции для обеспечения получения точных результатов профилирования и интеграции средства с проектом. Чтобы продемонстрировать это, создадим проект AnagramGame, а затем выполним калибровку. Среда IDE автоматически выполнит интеграцию при первом профилировании проекта AnagramGame.

Создание примера проекта

В этом документе будет выполнено профилирование примера проекта Anagram Game. Для этого вам сначала необходимо использовать мастер создания проектов для создания примера приложения и настроить проект, как главный проект.

Для создания приложения Anagram Game выполните следующие действия.

Выберите «Файл > Новый проект» (CTRL+SHIFT+N; &#8984+SHIFT+N в Mac ОС) в главном меню.

В мастере создания проекта выберите категорию «Примеры > Java».

Выберите проект «Anagram Game». Нажмите кнопку «Далее».

Укажите местоположение проекта. Нажмите кнопку «Завершить».

При нажатии кнопки «Готово» среда IDE создает пример проекта Anagram Game.

Выберите ‘Выполнить’ > ‘Настроить основной проект’ > AnagramGame в главном меню.

После настройки проекта как основного имя проекта Anagram Game будет выделено полужирным в окне ‘Проекты’. По умолчанию при использовании среды IDE для профилирования проекта среда IDE профилирует главный проект. Если ни один проект не выбран в качестве главного, среда IDE выполнит профилирование проекта, который выбран в окне ‘Проекты’.

Первое использование средства профилирования

Для получения точных результатов профилирования требуются данные калибровки для каждой платформы Java, которая будет использоваться для профилирования. При первом запуске средства профилирования, или если допустимые данные калибровки недоступны для данной платформы Java, среда IDE запросит выполнить процесс калибровки для вашей платформы.

Калибровка должны быть выполнена только один раз. Однако при внесении значительных изменений в комплектацию компьютера, которая может повлиять на его производительность, необходимо снова выполнить калибровку. Калибровку можно выполнить в любое время, выполнив следующие действия.

Выберите Дополнительные команды > Управление данными калибровки в меню ‘Профиль’.

Выберите платформу Java. Нажмите ‘Калибровать’.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Примечание. При использовании NetBeans IDE 7.4 или более ранней версии нажмите Дополнительные команды > Выполнить калибровку средства профилирования в меню ‘Профиль’ и выберите платформу Java в диалоговом окне ‘Выбор платформы Java для калибровки’.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Выбор задачи профилирования

Среда IDE предоставляет ряд внутренних параметров, позволяющих настраивать профилирования в соответствии с вашими требованиями. Например, можно уменьшить дополнительный расход ресурсов на профилирование за счет уменьшения объема созданной информации. Однако ознакомление со множеством доступных параметров может занять некоторое время. Для большинства приложений параметров по умолчанию, указанных для задач профилирования, достаточно для большинства ситуаций.

При профилировании проекта используется диалоговое окно «Выбор задачи профилирования» для выбора задачи в соответствии с необходимо информацией профилирования. В следующей таблице описываются задачи профилирования и результаты, получаемые в результате выполнения задачи.

Выберите для получения высокоуровневой информации о свойствах целевой JVM, включая активность потоков и распределение памяти.

Выберите для получения подробных данных о производительности приложения, включая время выполнения методов и число вызовов метода.

Выберите для получения подробной информации о выделении объектов и сборке мусора.

Диалоговое окно «Выбор задачи профилирования» — основной интерфейс для выполнения задач профилирования. После выбора задачи можно изменить ее параметры для точной настройки получаемых результатов. Для каждой задачи профилирования также можно создать и сохранить пользовательские задачи профилирования на основе данной задачи. При создании пользовательской задачи профилирования она будет указана в диалоговом окне «Выбрать задачу профилирования», что позволяет позже просто найти и выполнить пользовательские параметры. При создании пользовательской задачи профилирования можно изменить дополнительные параметры профилирования, нажав кнопку Дополнительные параметры в диалоговом окне «Выбрать задачу профилирования».

Наблюдение за приложением

При выборе задачи наблюдения целевое приложение запускается без каких-либо инструментов. При наблюдении за приложением вы получаете высокоуровневую информацию о нескольких важных свойствах целевой JVM. Поскольку наблюдение за приложением не требует большого дополнительного расхода ресурсов, можно запускать приложение в этом режиме в течение длительного времени.

Для наблюдения за приложением Anagram Game выполните следующие действия.

Убедитесь, что проект AnagramGame установлен как главный проект.

Выберите «Профиль > Профилировать главный проект» в главном меню.

Также можно щелкнуть правой кнопкой мыши узел проекта в окне ‘Проекты’ и выбрать ‘Профиль’.

Выберите «Наблюдение» в диалоговом окне «Выбор задачи профилирования».

При необходимости выберите дополнительные параметры монитора. Нажмите кнопку «Выполнить».

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Можно подвести курсор к параметру для просмотра всплывающей подсказки со сведениями о параметре.

При нажатии кнопки «Выполнить» среда IDE запускает приложение, и открывается окно «Средство профилирования» в левой панели среды IDE. В окне «Средство профилирования» содержатся элементы управления, позволяющие выполнять следующие действия.

Контроль за задачей профилирования

Просмотр состояния текущей задачи профилирования

Отображение результатов профилирования

Управление моментальными снимками результатов профилирования

Просмотр статистики основной телеметрии

Можно использовать элементы управления в окне «Средство профилирования» или главном меню для открытия окон, в которых можно просматривать данные наблюдения. Окно «Обзор телеметрии» можно использовать для быстрого получения обзора данных наблюдения в реальном времени. Если поместить курсор на график, можно просмотреть более подробную статистику отображающихся в графике данных. Можно дважды щелкнуть любой график в окне «Обзор телеметрии» для открытия более крупной и подробной версии графика.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Если обзор не открывается автоматически, можно выбрать «Окно > Профилирование > Обзор телеметрии», чтобы открыть окно вывода. Можно открыть окно «Обзор телеметрии VM» и просмотреть данные наблюдения в любое время во время сеанса профилирования.

Анализ производительности ЦП

При выборе задачи ЦП среда IDE профилирует производительность ЦП уровня метода (время выполнения) приложения и обрабатывает результаты в реальном времени. Можно выбрать анализ производительности путем периодического выполнения трассировки стека или инструментирования методов в приложении. Можно выбрать инструментирование всех методов или ограничить инструментирование частью кода приложения, даже определенным фрагментом кода.

Для анализа производительности ЦП можно выбрать способ профилирования приложения, выбрав один из следующих вариантов.

Быстрый (образец). В этом режиме IDE создает образец приложения и периодически создает трассировку стека. Этот вариант менее точен, чем методы инструментирования, но вызывает меньший дополнительный расход ресурсов. Этот вариант может помочь выбрать методы для инструментирования.

Расширенный (инструментация). В этом режиме методы профилируемого приложения инструментируются. Среда IDE регистрирует вход и выход потоков в методы проекта, позволяя отслеживать время, затрачиваемое на каждый метод. При входе в метод потоки создают событие «вход в метод». При выходе из метода потоки создают соответствующее событие «выход из метода». Записываются метки времени обоих событий. Эти данные обрабатываются в реальном времени.

Можно выбрать инструментирование всех методов приложения или ограничить инструментирование поднабором кода приложения, указав один или несколько корневых методов. Корневой метод можно указать, используя всплывающее меню в исходном коде, или щелкнув настроить, чтобы открыть диалоговое окно «Изменить корневые методы профилирования».

Корневой метод — это метод, класс или пакет в исходном коде, который можно указать как корень обработки. Данные профилирования собираются при входе и выходе одного из потоков приложения из корня обработки. До входа одного из потоков приложения в корневой метод данные профилирования не собираются. Указание корневого метода может значительно снизить дополнительный расход ресурсов на профилирование. Для некоторых приложений указание корневого метода может быть единственным способом получения подробных и/или реалистичных данных производительности, поскольку профилирование всего приложения может создать так много данных профилирования, что приложение станет непригодным к использованию, или даже произойдет отказ приложения.

Примечание. Режим профиля Quick недоступен в IDE NetBeans 7.0 и более ранних версиях. Можно использовать только инструментирование для получения результатов профилирования, но можно выбрать инструментирование всего приложения или ограничить инструментирование частью приложения, указав один или несколько корневых методов.

Можно еще больше уточнить код для профилирования, используя фильтр для ограничения исходного кода для инструментирования.

Теперь среда IDE будет использоваться для анализа производительности ЦП приложения Anagram Game. Необходимо выбрать вариант «Часть приложения», а затем WordLibrary.java в качестве корневого метода профилирования. При выборе этого класса в качестве корневого метода профилирования последнее ограничивается методами в этом классе.

Нажмите кнопку «Остановить» в окне «Средство профилирования», чтобы остановить предыдущий сеанс профилирования (если он еще запущен).

Выберите «Профиль > Профилировать главный проект» в главном меню.

Выберите «ЦП» в диалоговом окне «Выбор задачи профилирования».

Выберите Расширенный (инструментарий).

Для использования этого варианта также необходимо указать корневой метод профилирования.

Нажмите кнопку настроить, чтобы открыть диалоговое окно «Изменение корневых методов профилирования».

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Нажмите кнопку «Дополнительно», чтобы открыть диалоговое окно «Изменение корневых методов профилирования (Дополнительно)», в котором доступны дополнительные параметры для добавления, изменения и удаления корневых методов.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Можно видеть, что WordLibrary указан как корневой метод. Нажмите «ОК», чтобы закрыть диалоговое окно «Изменение корневых методов профилирования (Расширенное)».

Нажмите «ОК», чтобы закрыть диалоговое окно «Изменение корневых методов профилирования».

После выбора корневых методов профилирования можно щелкнуть правка в диалоговом окне ‘Выбор задачи профилирования’ дл изменения выбранного корневого метода.

Выберите Профилировать только классы проекта для значения «Фильтр».

Фильтр позволяет ограничить инструментируемые классы. Можно выбрать один из предварительно определенных фильтров профилирования IDE или создать собственные пользовательские фильтры. Щелкните Показать значение фильтра для просмотра списка классов, которые будут профилированы при применении выбранного фильтра.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Нажмите кнопку «Выполнить» в диалоговом окне «Выбрать задачу профилирования» для начала сеанса профилирования.

При нажатии кнопки «Выполнить» среда IDE запускает приложение Anagram Game и запускает сеанс профилирования. Чтобы просмотреть результаты профилирования, нажмите кнопку «Текущие результаты» в окне «Средство профилирования», при этом откроется окно «Текущие результаты». В окне «Текущие результаты» отображаются собранные на этот момент данные профилирования. По умолчанию отображаемые данные обновляются каждые несколько секунд. При анализе производительности ЦП в окне «Текущие результаты» отображаются сведения о времени, затраченным для каждого метода, и число вызовов каждого метода. Можно видеть, что в приложении Anagram Game изначально вызываются только выбранные корневые методы.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Вы можете быстро перейти к исходному коду, содержащему любой из перечисленных методов, щелкнув правой кнопкой мыши имя метода и выбрав ‘Перейти к источнику’. При щелчке ‘Перейти к исходному коду’ класс открывается в редакторе исходного кода.

Анализ использования памяти

Задач «Анализ использования памяти» предоставляет данные об объектах, выделенных в целевом приложении, таких как число, тип и расположение выделенных объектов.

Для анализа производительности памяти следует выбрать объем данных, который необходимо получить, выбрав один из следующих вариантов.

Быстро. Если выбран этот вариант, профилировщик создаст образец приложения для предоставления данных, которые ограничены живыми объектами. Этот параметр отслеживает только живые объекты и не отслеживает распределение при использовании запасов. Если выбран этот вариант, невозможно регистрировать трассировки стеков или использовать точки профилирования. Этот вариант требует значительно меньших затрат, чем ‘Дополнительно’.

Дополнительно. При выборе этого варианта приложение может получить информацию о количестве, типе и расположении выделенных объектов. Все классы, которые в настоящее время загружены целевым JVM (и каждый новый класс после его загрузки), являются инструментами для получения информации о распределении объектов. Этот вариант необходимо выбрать, если нужно использовать точки профилирования при анализе памяти или если нужно выполнить запись стека вызовов. Этот вариант требует больших затрат на профилирование по сравнению с вариантом ‘Быстро’.

Если вы выберете вариант ‘Дополнительно’, вы также можете установить следующие параметры.

Запись полного образа жизни объекта. Выберите этот вариант, чтобы записать всю информацию по каждому объекту, в том числе количество выживших поколений.

Запись трассировки стека для распределения. Выберите этот вариант, чтобы записать полный стек вызовов. Этот вариант позволяет просматривать дерево обратных вызовов для вызовов методов при просмотре снимка памяти.

Использование определенных точек профилирования. Выберите этот вариант, чтобы включить поддержку точек профилирования. Отключенные точки профилирования игнорируются. При отмене этого параметра все точки профилирования в проекте игнорируется.

Показатель «Накладные расходы» в окне «Выбрать задачу профилирования» предоставляет примерное увеличение или уменьшение дополнительного расхода ресурсов на профилирование в соответствии с выбранными вариантами профилирования.

В этом упражнении среда IDE будет использоваться для анализа производительности памяти приложения Anagram Game. Рекомендуется выбрать вариант Дополнительно и выбрать параметр Запись трассировки стека для распределения, чтобы в IDE выполнялась запись полного стека вызовов. При выборе этого варианта при работе со снимком памяти вы сможетепросмотреть дерево обратных вызовов.

Нажмите кнопку «Остановить» в окне «Средство профилирования», чтобы остановить предыдущий сеанс профилирования (если он еще запущен) и приложение Anagram Game.

Выберите «Профиль > Профилировать главный проект» в главном меню.

Выберите «Память» в диалоговом окне «Выбрать задачу профилирования».

Выберите Дополнительно.

Выберите Регистрировать трассировку стека для операций выделения. Нажмите кнопку «Выполнить» для начала сеанса профилирования.

Обратите внимание, что при выборе этого варианта значение показателя «Накладные расходы» значительно увеличивается, но приложение достаточно мало для того, чтобы снижение производительности было приемлемым.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

При нажатии кнопки «Выполнить» среда IDE запускает приложение Anagram Game и запускает сеанс профилирования. Чтобы просмотреть результаты профилирования, нажмите кнопку «Текущие результаты» в окне «Средство профилирования», при этом откроется окно «Текущие результаты». В окне «Текущие результаты» отображается информация о размере и числе объектов, выделенных в нашем проекте.

По умолчанию результаты сохраняются и отображаются как число выделенных байтов, но можно щелкнуть заголовок столбца, чтобы изменить способ отображения результатов. Также можно выполнить фильтрацию результатов, введя имя класса в поле фильтра под списком.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Получение моментального снимка

При выполнении сеанса профилирования можно сохранить результаты профилирования, получив моментальный снимок. Моментальный снимок сохраняет данные профилирования на момент получения снимка. Однако моментальные снимки отличаются от текущих результатов профилирования следующим.

Моментальные снимки могут быть исследованы, когда сеанс профилирования не запущен.

Моментальные снимки содержат более подробную запись данных профилирования, чем текущие результаты.

Моментальные снимки просты в сравнении (моментальные снимки памяти).

Поскольку для открытия моментальных снимков проекта сеанс профилирования выполняться не должен, можно открыть моментальный снимок проекта в любое время, выбрав снимок в списке сохраненных моментальных снимков в окне «Средство профилирования» и выбрав «Открыть».

Получение и сравнение моментальных снимков памяти

В этом упражнении будет получен и сохранен моментальный снимок в проекте. Затем будет получен второй моментальный снимок и сравнен с первым.

Убедитесь, что сеанс профилирования по-прежнему выполняется. (Если сеанс профилирования остановлен, повторите действия для анализа производительности памяти и откройте окно «Текущие результаты».)

Вы сможете использовать фильтр в окне ‘Динамические результаты’ для поиска строки.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Среда IDE получает моментальный снимок памяти и открывает его во вкладке «Трассировка стека операций выделения памяти». На вкладке «Трассировка стека операций выделения памяти» можно изучить обратное дерево вызовов для методов, создавших экземпляр выбранного объекта.

Получите другой моментальный снимок, нажав кнопку «Сделать моментальный снимок собранных результатов» на панели инструментов «Текущие результаты» (или нажмите кнопку «Сделать моментальный снимок» в окне «Средство профилирования»). Сохраните моментальный снимок.

В окне одного из снимков памяти, нажмите кнопку ‘Вычислить разницу’ ( что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java) на панели инструментов снимков. Или выберите «Профиль > Сравнить моментальные снимки памяти» в главном меню.

В окне «Выбор моментального снимка для сравнения» выберите один из открытых моментальных снимков в списке. Нажмите кнопку «ОК».

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

После открытия моментального снимка памяти можно сравнить его с другими сравнимыми снимками памяти. Снимок экрана можно сравнить с текущими открытыми несохраненными снимками или со снимками, которые сохранены в проекте или где-либо в ином месте системы.

При нажатии кнопки «ОК» откроется окно «Сравнение жизнеспособности», в котором отображается сравнение двух моментальных снимков памяти.

что такое профилирование java. Смотреть фото что такое профилирование java. Смотреть картинку что такое профилирование java. Картинка про что такое профилирование java. Фото что такое профилирование java

Сравнение моментальных снимков сходно с моментальным снимком памяти, но на нем отображается только различия двух моментальных снимков. При анализе цифр в столбцах вы увидите, что знак плюс (+) означает, что значение увеличилось, а знак минус (-) означает, что значение уменьшилось. В столбце ‘Динамический объем байтов’ графическое представление позволит вам легко определить различие в распределенных байтах. Если левая половина ячейки в этом столбце зеленая, это означает, что число выделенных байтов для этого объекта меньше при получении второго моментального снимка, чем при получении первого. Если правая половина ячейки красная, это означает, что число выделенных байтов выше во втором моментальном снимке, чем в первом.

Примечание. Также можно настроить точки профилирования для создания снимков, что позволит добиться более точного контроля над временем создания снимков. Дополнительные сведения о создании моментальных снимков с помощью точек профилирования см. в разделе Использование точек профилирования в IDE NetBeans.

Дополнительные сведения

На этом завершается введение в профилирование приложения с помощью IDE NetBeans. В этом документе были продемонстрированы основы использования среды IDE для профилирования простого проекта NetBeans, а также просмотр результатов профилирования. Описанные выше действия применяются при профилировании большинства проектов. Для профилирования более сложных проектов, таких как приложения J2EE и проекты свободной формы, могут требоваться дополнительные действия по настройке.

Для получения более подробной информации о параметрах и функциях профилирования, не рассмотренных в этом документе, воспользуйтесь документацией, входящей в состав среды IDE и доступной из меню «Справка».

Сопутствующая документация приведена в следующих ресурсах.

Часто задаваемые вопросы по профилировщику NetBeans Документ содержит часто задаваемые вопросы по профилированию приложений в среде IDE NetBeans

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *