Выявление ресурсоемких методов
Ресурсоемкие методы влияют на общую производительность в ходе выполнения программы. С помощью панели Поток выполнения и Вызов методов можно найти такие методы, потенциально требующие оптимизации.
Предварительные требования:
Метод нуждается в оптимизации, если выполняется хотя бы одно из условий:
- Метод вызывается чаще, чем необходимо. Быстродействие можно поднять, либо усовершенствовав сам метод, либо вызывая его реже.
- Метод долго выполняется. Для повышения быстродействия следует найти самые медленные классы и оптимизировать методы, на которые тратится больше всего времени. Такие методы не обязательно будут выполняться сами, но могут вызывать другие методы (например, при сортировке или делегировании).
Выявление часто вызываемых методов
Для того чтобы найти часто вызываемые методы выполните следующие действия:
- В панели Монитор профилирования выберите монитор либо агент.
- Щелкните правой кнопкой и выберите Открыть с помощью > Поток выполнения. Откроется панель потока выполнения.
- Нажмите кнопку Приблизить
чтобы увеличить область просмотра последовательности вызываемых методов.
- Щелкните правой кнопкой в графической панели на имени метода и выберите
Показать все повторы. Рядом со всеми повторяющимися шаблонами появится буква X.
- Увеличьте эти области, просмотрите повторяющиеся шаблоны и выясните количество повторов метода.
Обнаружение методов с большим временем выполнения
Для того чтобы обнаружить методы с большим временем выполнения выполните следующие действия:
- В панели потока выполнения уточните длину полосы каждого метода. Чем длиннее полоса, тем дольше выполняется метод.
- Для того чтобы рассмотреть метод подробнее, откройте панель Вызов метода: выберите метод, щелкните на нем правой кнопкой мыши и
выберите Показать вызов метода. Откроется панель Вызов метода.
- Для того, чтобы в этой панели увидеть время выполнения вызова, щелкните правой кнопкой и выберите Показать вызов метода.
В этой панели отображается тот же метод, что и в помеченной строке.
- В локальной панели инструментов нажмите Показать контекст вызова
, чтобы увидеть функции или программы, вызывающие этот метод. Всякий раз при нажатии этой кнопки в последовательности вызовов будет отображаться на один метод выше.
- Выберите метод. Вертикальная длина выбранной области показывает время, необходимое для его выполнения. Это время можно определить точно по вертикальной шкале времени с правой стороны панели. В строке состояния отображается совокупное время для данного метода.
Получение общего обзора времени выполнения
Для получения общего обзора времени выполнения выполните следующие действия:
- Откройте панель Поток выполнения: во всплывающем меню монитора в панели Монитор профилирования выберите Открыть с помощью > Поток выполнения.
- С правой стороны этой панели, как и в панели Вызов метода, находится вертикальная шкала времени.
- Увеличьте какой-либо раздел панели и подсветите нужный метод с помощью кнопки Приблизить
.
- Выберите метод, щелкнув на его имени или на пустом месте рядом. Вертикальная длина подсвеченной области показывает время, необходимое для выполнения этого метода. Точное значение времени отображается в строке состояния.
- Для того, чтобы на экране помещалось больше кода, и при этом можно было видеть подсвеченную область метода (желтые прямоугольные области), нажмите кнопку Отодвинуть
.
Даже если всего выполнения и не видно, все равно можно определить, сколько времени (по отношению ко всей программе) необходимо для выполнения метода.
Связанные концепции
Обзор инструмента профилирования
Панель и таблица Поток выполнения
Статистические панели
Связанные задачи
Профилирование приложения
Запуски или подключение процесса Java
Проверка сбора мусора
(C) Copyright IBM Corporation 2000, 2006.Все права
защищены.