O Fragmento executableUnit da Probe

O fragmento executableUnit da probe permite executar uma coleta de dados refinada para métodos que correspondem à especificação de destino e filtro da probe e que possuem informações disponíveis sobre o código fonte.

Uma chamada a este tipo de fragmento é inserida antes de toda "unidade executável" no método de destino. Para os métodos que correspondem à especificação de destino e filtro da probe mas que não possuem informações de código fonte, o fragmento é inserido uma vez, no início do método.

Os fragmentos executableUnit podem utilizar todos os tipos de itens de dados, exceto returnedObject, exceptionObject, isFinally e thisObject. Ainda mais importante que isso, eles podem utilizar o item de dados executableUnitNumber, que contém o número da unidade executável que está prestes a ser executada.

O número das unidades executáveis em um método e nas tabelas de linhas não incluirão as unidades executáveis inseridas no método por Probekit.

As Unidades Executáveis e os Blocos Básicos

Uma unidade executável começa no início de cada bloco básico e em cada código de byte cujo número da linha de origem seja diferente do código de byte anterior. Um bloco básico é uma região de instruções de código de byte que não pode ser ampliada nem reduzida. Quando a primeira instrução em um bloco básico é executada, todas as instruções serão executadas, de forma que as instruções são consideradas um único grupo.

Os blocos básicos são finalizados com instruções branch, call, throw e return, entre outras.

Algumas instruções, como "divide", não são consideradas como sendo o fim de uma unidade executável, apesar do fato de que elas podem lançar uma exceção. Isso é uma outra forma de que uma unidade executável não é tecnicamente o mesmo que um bloco básico.

Se um método Java não possuir nenhuma informação de origem associada, o método inteiro é considerado como tendo apenas uma unidade executável.

Tópico Pai: Referência de Elemento de Probekit

Referências Relacionadas
O Objeto Fragment da Probe
O Objeto Data da Probe

Informações Relacionadas
Exemplo ExecutableUnit

Termos de Uso | Feedback
(C) Copyright IBM Corporation 2000, 2004. Todos os Direitos Reservados.