Come impilare tracciare un processo di esecuzione in java

Come impilare tracciare un processo di esecuzione in java
Una traccia dello stack non è altro che la posizione delle eccezioni nei programmi Java o puoi dire che è usato per trovare quelle righe di un codice in cui si verificano eccezioni. Una traccia dello stack funziona allo stesso modo di uno stack di carte sulla tua scrivania fa il primo, per la prima. Aggiungi documenti alla pila e poi li togli nell'ordine inverso. Include i dettagli su un processo o un'operazione che il tuo codice ha invocato. Di conseguenza, la traccia di Java Stack è una sequenza di frame che inizia con il metodo corrente e termina con l'inizio del programma.

Lo stack, noto anche come Runtime o Call Stack, è una raccolta di frame dello stack creati da un programma mentre funziona e memorizzati in una struttura di dati dello stack. Java Virtual Machine (JVM) genererà automaticamente una traccia dello stack quando si verifica un'eccezione. Quindi, questo articolo ti fornirà le linee guida su come utilizzare la traccia dello stack del processo di esecuzione in Java.

Cosa sta tracciando lo stack in Java

Ora prima di creare un file Java, è necessario assicurarsi di aver installato l'applicazione Java Development Kit (JDK) nel tuo sistema operativo Linux, altrimenti non sarai in grado di eseguire alcun programma Java digitando:

$ sudo apt installare default-jdk

Dopo aver installato questa applicazione prerequisito, è necessario creare un file Java e uno dei modi più semplici per farlo è usando qualsiasi editor di testo digitando:

$ nano javastacktrace.Giava

Dopo aver creato un file Java, il passo successivo è scrivere e salvare un codice che può essere visto di seguito:

Dopo aver salvato un file Java, il passo successivo è compilare ed eseguirlo:

$ javac javastacktrace.Giava
$ java javastacktrace

Puoi vedere che abbiamo scritto Demofun3 () Come ultima funzione durante la scrittura di un codice ma è stata eseguita nella seconda riga in quanto questo è il punto della generazione di tracce che sarà responsabile di eseguire il DumpStack () che visualizzerà l'output sullo schermo. Le restanti funzioni a partire da Demofun2 () A demofun () eseguirà successivamente nell'ordine inverso e nel principale() La funzione viene visualizzata in fondo in quanto è responsabile dell'avvio del programma e chiamerà anche altre funzioni.

Si può dire che il punto di esecuzione dello stack inizia dalla prima riga e il frame stack inizia dalla seconda riga all'ultima riga che costituisce l'intera traccia dello stack. Possiamo osservare che il metodo eseguito per primo diventa l'ultimo telaio dello stack dello stack, mentre il metodo che viene eseguito diventa l'ultimo diventa il primo telaio dello stack dello stack e, di conseguenza, ogni pezzo di traccia dello stack rappresenta una cornice dello stack.

Come impilare la traccia di un processo di esecuzione

JStack è un ottimo strumento per risolvere i problemi di esecuzione del tempo soprattutto se l'applicazione agisce, consumando più CPU o memoria del previsto, è possibile risolvere l'applicazione. Implementlo in Java:

Classe pubblica Forcedump
public static void main (string [] args) lancia l'eccezione
Tentativo
while (vero)
Filo.Sleep (2000);

catch (nullpointerException demo)
Demo.printStackTrace ();


Successivamente, puoi creare un file Java usando qualsiasi editor di testo come abbiamo fatto usando un editor di testo nano come mostrato di seguito

$ nano forzato.Giava

Dopo quella compilarlo usando:

$ javac forzato.Giava

Ed eseguire:

$ Java forzato

Dopo aver eseguito questo programma, inizierà un processo di base; Per trovare l'ID processo (PID), aprire un'altra finestra del terminale e utilizzare:

$ ps aux | grep forcedump

Quindi è possibile trovare ulteriori informazioni sui thread in esecuzione in un processo utilizzando il comando di seguito:

$ jstack

L'ID processo è 4457 come mostrato nell'immagine:

$ Jstack 4457

Conclusione

Una traccia dello stack è una raccolta di frame dello stack che illustra un momento specifico nel tempo durante l'esecuzione di un programma. Include dettagli su un metodo o funzione che il tuo codice ha invocato. Pertanto, la traccia di Java Stack è una serie di frame che inizia con il metodo corrente e termina con l'inizio del programma. In questo articolo, ti abbiamo mostrato come è possibile implementare il processo di tracciamento dello stack nel linguaggio di programmazione Java.