Identificando Métodos Intensivos de Recursos
Os métodos com uso intensivo de recursos afetam o desempenho geral da execução de um programa. O uso das visualizações
Fluxo de Execução e Chamada de Método pode ajudar a identificar facilmente esses métodos que podem ser candidatos
à otimização.
Pré-requisitos:
Um método poderá ser um candidato à otimização se uma das seguintes instruções
se aplicar:
- O método for chamado com mais freqüência do que o necessário. O desempenho pode ser aperfeiçoado
encontrando-se formas de efetuar menos chamadas ou de pequenas melhorias em um
método que seja utilizado com freqüência.
- O método tiver um tempo de execução longo. Ou então, o desempenho puder ser aperfeiçoado quando identificadas
classes que consomem a maior parte do tempo de execução e os métodos que passam um
tempo longo na pilha forem otimizados. Tais métodos podem não necessariamente estar em execução, mas
ao contrário, estar chamando outros métodos
para tarefas como classificação ou delegação.
Localizando Métodos Chamados com Freqüência
Para localizar métodos chamados com freqüência:
- Na visualização Profiling Monitor, selecione um monitor ou um agente.
- Dê um clique com o botão direito do mouse e selecione Open With > Fluxo de Execução.
A visualização Fluxo de Execução é aberta.
- Clique no botão Aumentar Zoom
para ampliar
uma seqüência de chamadas de método.
- Clique com o botão direito do mouse no nome de um método na visualização gráfica e selecione
Detectar Todas as Repetições. Você verá um X onde houver
padrões repetidos.
- Amplie essas áreas para ver os padrões repetidos e o número
de repetições do método.
Localizando Métodos com Tempos de Execução Longos
Para localizar métodos com tempo de execução longo:
- Na visualização Fluxo de Execução, examine o comprimento de cada tira do método. Quanto mais longa a tira, mais longo o tempo
de execução.
- Para consultar um método com mais detalhes, abra a visualização Chamada de Método selecionando o
método, clique com o botão direito do mouse e selecione Mostrar Chamada de Método. A visualização Chamada de Método é aberta.
- Na visualização Estatísticas de Método, para ver o tempo de execução do responsável pela chamada do método, clique com o botão direito do mouse e, em seguida, selecione Show Chamada de Método.
Essa visualização mostra uma representação do mesmo método que da linha identificada por um rótulo.
- Na barra de ferramentas
local, clique em Show Caller
para ver os responsáveis pela
chamada do método selecionado na visualização.Cada vez que você clica nesse botão, é exibido
um método acima na seqüência de chamada.
- Selecione um método. O comprimento vertical da área selecionada indica o tempo
base para o método. Você pode determinar o tempo de execução deste método
marcando a escala de tempo vertical no lado direito da visualização. A linha de status
apresenta o tempo cumulativo para o método.
Obtendo uma Visualização Ampla da Execução do Programa
Para obter uma visualização ampla do tempo de execução:
- Abra a visualização Fluxo de Execução: No menu pop-up do monitor na visualização
Profiling Monitor, selecione Open With > Fluxo de Execução.
- Essa visualização, como a visualização Chamada de Método, tem uma escala de linha vertical
ao longo do lado direito.
- Utilize o botão Zoom In
para ampliar uma determinada
seção da visualização para realçar o método que deseja examinar.
- Clique no nome do método (ou no espaço em branco abaixo dele) para selecioná-lo. O comprimento
vertical da área realçada é um indicativo do tempo base
para o método. O valor exato
do tempo base é exibido na linha de status.
- Utilize o botão Diminuir Zoom
para visualizar uma parte
maior do programa inteiro, enquanto ainda é possível ver a área realçada do
método (ou seja, ainda é possível ver a área retangular amarela).
Mesmo que a representação da execução inteira não seja vista, você ainda conseguirá
determinar quanto tempo este método consome com relação ao programa
todo.
Conceitos Relacionados
Visão Geral da Ferramenta de Definição de Perfil
Visualização e Tabela Fluxo de Execução
Exibições Statistical
Tarefas Relacionadas
Definindo o Perfil de um Aplicativo
Iniciando ou Anexando um Processo Java
Estudando a Coleta de Lixo
(C) Direitos Autorais IBM Corporation 2000, 2006. Todos os Direitos Reservados.