2009-08-14 6 views
6

Un programmeur java peut-il créer des threads de démon manuellement? Comment c'est?Comment créer des threads démon?

+2

Voulez-vous dire fils "démon"? Dans ce cas, google peut vous emmener plus loin .. – Gishu

+1

S'il vous plaît noter que cela pourrait ne pas faire ce que vous êtes vraiment après. Un thread démon n'est pas identique à un processus démon. –

+0

Biju et http://stackoverflow.com/users/124339/johanna sont la même personne? – sourcerebels

Répondre

-4

Oui vous pouvez

Thread thread = new Thread( 
    new Runnable(){ 
    public void run(){ 
     while (true) 
     wait_for_action(); 
    } 
    } 
); 
thread.start(); 
+1

classe Devil extends Thread { Devil() { setDaemon (true); start(); } public void run() {// Différentes tâches mal ... }} Je suis celui ... u ont entendu parler .. –

+0

je pense que la méthode setDaemon peut faire la magie. .. –

6

Vous pouvez marquer un thread en tant que démon à l'aide de la méthode setDaemon fournie. Selon le document java:

Marque ce thread en tant que thread démon ou thread utilisateur. La machine virtuelle Java se ferme lorsque les seuls threads en cours d'exécution sont tous les threads démon.

Cette méthode doit être appelée avant le démarrage du thread.

Cette méthode appelle d'abord la méthode checkAccess de ce thread sans arguments. Cela peut entraîner une exception SecurityException (dans le thread en cours).

Voici un exemple:

Thread someThread = new Thread(new Runnable() { 
    @Override 
    public void run() { 
     runSomething(); 
    } 
}); 
someThread.setDaemon(true); 
someThread.start(); 
0
class mythread1 implements Runnable { 
    public void run() { 
    System.out.println("hii i have set thread as daemon"); 
    } 


    public static void main(String []arg) { 
    mythread1 th=new mythread1(); 
    Thread t1 = new Thread(th); 
    t1.setDaemon(true); 
    t1.start(); 
    System.out.println(t1.isDaemon()); 
    } 
} 
Questions connexes