Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> Java Programming >> .

Come ottenere un riferimento a un thread Java

codice in esecuzione in thread Java è un potente mezzo per ottenere un sacco fatto in poco tempo . Per monitorare e controllare i fili , è necessario configurare un oggetto thread legato al codice thread- enabled . Questo ti dà il pieno controllo su i thread creati. Cose che ti serviranno
progetto Java con thread eseguibili nel codice
Show More Istruzioni
1

Scarica l'ID del thread con questo comando all'interno del periodo obbligatorio ( ) funzione che esegue il thread : .

Thread.currentThread ( ) getId ( ) economici 2

assegnare l'oggetto thread per una variabile pubblica , se avete bisogno di controllare il filo da altre parti del programma , oppure stamparlo direttamente se volete solo sapere cosa è in esecuzione :

public int myThreadId = 0;

public void run ( ) { System.out.println

( " nome Discussione: " . + Thread.currentThread ( ) getName ( ) ; //Stampa il filo nome

myThreadId = Thread.currentThread ( ) getId ( ) ; //Assegnazione di un ID thread per un pubblico . variabile

}
3

Creare un nuovo oggetto thread per controllare o monitorare un filo da altre parti del programma . Si può anche afferrare l' oggetto da una filettatura esterna , . quali il processo principale , con la costruzione di un albero completo di thread in esecuzione e di gruppi filo Chiamare questo dalla funzione main () della classe Java :

//Proseguire a piedi lungo l'albero per trovare il gruppo root

ThreadGroup myRootGroup = Thread.currentThread ( ) getThreadGroup ( ) .

ThreadGroup parentGroup ;

while (! ( parentGroup = myRootGroup.getParent ( ) ) = null) {

rootGroup = parentGroup ;

}

//tornare indietro fino dalla radice , creando un oggetto di discussione per ogni thread nel processo

fili [] miei fili = new Thread [ myRootGroup.activeCount ( ) ] ;

mentre ( rootGroup.enumerate ( miei fili , true) == myThreads.length ) {

miei fili = new Thread [ myThreads.length * 2 ] ;

}

Ora è possibile accedere a tutti i thread nel vostro processo uno ad uno , ad esempio : .

System.out.println ( " Nome Discussione: " + miei fili . [ 0 ] currentThread ( ) getName (); . . .

myThreadId miei fili = [ 0 ] currentThread ( ) getId ();

 

Programmazione © www.354353.com