Frammento probe executableUnit

Il frammento probe executableUnit consente di eseguire una raccolta capillare di dati relativi ai metodi che soddisfano la destinazione del probe e le specifiche dei filtri e che forniscono informazioni sul codice di origine.

Una chiamata a questo tipo di frammento viene inserita prima di ciascuna "unità eseguibile" nel metodo di destinazione. Per i metodi che soddisfano le specifiche filtro e di destinazione del probe, ma che non dispongono di informazioni di codice di origine, il frammento viene inserito una sola volta, all'inizio del metodo.

I frammenti executableUnit possono utilizzare tutti i tipi di elementi di dati, fatta eccezione per returnedObject, exceptionObject, isFinally, e thisObject. Ancor più importante, essi possono utilizzare l'elemento di dati executableUnitNumber che contiene il numero di unità eseguibili che stanno per essere eseguite.

Il numero di unità eseguibili in un metodo e nella tabella di righe non comprenderà le unità eseguibili inserite nel metodo da Probekit.

Unità eseguibili e blocchi di base

Un'unità eseguibile comincia all'inizio di ciascun blocco di base e in ogni codice byte il cui codice di origine è differente da quello precedente. Un blocco di base è un'area di istruzioni del codice byte che non è possibile né estendere né ridurre. Quando la prima istruzione di un blocco di base viene eseguita, tutte le istruzioni verranno eseguite: in tal modo, le istruzioni verranno considerate come un unico gruppo.

Alcune delle istruzioni con le quali terminano i blocchi di base sono branch, call, throw e return.

Istruzioni quali, ad esempio, "divide" non vengono considerate parte finale di un'unità eseguibile, nonostante possano lanciare un'eccezione. È questo un altro aspetto che evidenzia la differenza, da un punto di vista tecnico, tra un'unità eseguibile e un blocco di base.

Se un metodo Java è privo di informazioni di origine, l'intero metodo viene considerato come se disponesse di una sola unità eseguibile.

Argomento principale: Informazioni di riferimento su Probekit

Riferimenti correlati
Oggetto probe Fragment
Oggetto probe Data

Informazioni correlate
Esempio di ExecutableUnit

Copyright IBM Corporation e altri 2000, 2004.