Exibição e Tabela Execution Flow

A exibição e a tabela Execution Flow mostram uma representação da execução do programa inteiro. Na exibição, os encadeamentos do programa se ajustam horizontalmente e a hora é medida para que a execução inteira caiba verticalmente.  Na tabela, os encadeamentos são agrupados na primeira coluna e a hora é gravada em linhas sucessivas.

A exibição e a tabela Execution Flow estão disponíveis apenas se a coleta de informações do fluxo de execução foi ativada, o que é feito quando você ativa ou conecta-se ao aplicativo que terá o perfil definido.  Selecione a opção de definição de perfis, My application is too slow e em seguida, a partir da opção Details, selecione Show Execution flow graphical details

Tela de Exibição

A seguir um exemplo da exibição Execution Flow:

conjuntos de tiras verticais; etiquetas do método na parte superior; controles acima disso; números do lado direito; algumas linhas horizontais dispersas

A tiras caem como cascatas para a direita à medida que um método chama outro, cujo método que responde por sua vez chama outro método e assim por diante. As tiras são agrupadas em colunas por encadeamento. Uma fina linha vertical preta separa uma coluna da outra. O nome de cada encadeamento aparece na parte superior da sua coluna.

Utilize a ferramenta Zoom In zoom in para expandir o gráfico.

A exibição Execution Flow exibe as seguintes informações:

Tiras pedaço de tira cor de laranja
As tiras indicam métodos nos encadeamentos. O código de cores estipula a classe do objeto. A tira na extremidade à esquerda, indicada GC, é coleta de lixo.
Tempo chip cinza com um número nele
O tempo é medido em segundos e está no eixo vertical, iniciando-se na parte superior. A altura de uma tira indica o tempo gasto na execução do método.
Nomes, argumentos e tipos linha preta horizontal com pedaços de fitas coloridas caindo, que são etiquetadas, actionPerformed, addButton, repaint
A linha preta superior indica que a classe, actionPerformed, chamou a classe addButton, que chamou a classe repaint.  As linhas são pretas, a menos que o método seja um construtor, nesse caso a linha e as etiquetas são vermelhas.

Se a exibição estiver aberta a partir do objeto do monitor, ela mostrará a execução de todos os agentes sob o monitor. O nome do encadeamento mostra o ID do processo correspondente para diferenciar entre encadeamentos do mesmo nome em processos diferentes.

Encadeamento de Coleta de Lixo

Por padrão, as colunas na extremidade esquerda exibem o encadeamento GC (coleta de lixo), que contém objetos coletados de todos os processos sob esse monitor. Um retângulo fino aparece nesta coluna sempre que ocorre a coleta de lixo de um objeto. Como acontece com outros objetos e métodos na exibição, você pode clicar no objeto para o qual a coleta de lixo ocorreu para selecioná-lo. Retângulos grandes, altos e cinzas representam fases da coleta de lixo na sessão de definição de perfil.

Exibição da Tabela

A seguir um exemplo da tabela Execution Flow:

tabela com 3 colunas identificadas como thread names, instance name e start time

As mesmas informações estão disponíveis na tabela e na exibição.

Controles

A barra de ferramentas da exibição e da tabela contém os seguintes controles:

Area select  botão area select
Selecionar uma parte do gráfico para aumentar.
Zoom in botão zoom in
Ampliar o gráfico.
Zoom out botão zoom out
Reduzir o gráfico.
Home botão home
Reinicializar a exibição para seu tamanho e posição original.
Graph colors botão bar colors
Alterar as cores do gráfico em exibição.  A alteração aplica-se somente ao gráfico Execution Flow atualmente ativo.  Para alterar cores de gráficos de todos os gráficos Execution Flow, utilize Window > Preferences > Profiling and Logging > Appearance > Execution Flow Graph

diálogo seleção de cores do gráfico
 
Menu > Show Time fragmento mostrando menu drop down com show time
Selecionar o horário base do gráfico. Raw time é o tempo que um aplicativo leva para execução, incluindo a sobrecarga da definição de perfil.  Compensated time (padrão) é o tempo que o aplicativo leva menos o tempo atribuído à definição de perfil.

Controle no Gráfico

Você também possui controle do corpo do gráfico. Aponte o mouse sobre uma tira para exibir informações de status (por exemplo: linha de status de amostra, conforme descrito a seguir)

Apontar em outro lugar na exibição mostra o nome do encadeamento e a hora correspondente à posição vertical do ponteiro.

Controle Pop up

Os controles pop up consistem no seguinte:

Refresh Views
Para atualizar todas as exibições de definição de perfis e de criação de logs.
Graph Colors
Mesmo que o botão Graph Colors. 
Detect All Repetitions
Exibe Xs para identificar métodos chamados freqüentemente.
Hide All Repetitions
Oculta a exibição de Xs em métodos chamados freqüentemente.
Threads > Show All Threads
Exibe todos os encadeamentos pertencentes ao recurso selecionado.
Threads > Hide All Threads
Oculta todos os encadeamentos do recurso selecionado.
Threads > GC
Exibe o encadeamento Coleta de Lixo.
Threads > thread name
Exibe o encadeamento designado.
Home
Retorna o gráfico ao estado original que estava quando aberto pela primeira vez.
Show Execution Table
Exibe informações em uma tabela em vez de gráfico.
Show Method Invocation
Exibe as mesmas informações mas também mostra os métodos de chamada de um determinado método.
Open Source
Para abrir uma exibição de edição contendo o código fonte selecionado. O método, a classe ou o pacote devem estar no workbench.

Conceitos Relacionados
Visão Geral da Ferramenta de Definição de Perfis
Recursos de Definição de Perfil

Tarefas Relacionadas
Definindo o Perfil de um Aplicativo
Exibindo Gargalos de Desempenho
Exibindo Chamadas e Responsáveis pela Chamada de um Método
Identificando Fases da Execução do Programa
Identificando Encadeamentos Ativos
Identificando Métodos Intensivos de Recursos
Tutorial: Analisando os dados de definição de perfis a partir de um processo Java

 

 
 

>