Biju CD
Biju CD

Reputation: 5109

How do I create daemon threads?

Can a java programmer can create daemon threads manually? How is it?

Upvotes: 6

Views: 13964

Answers (4)

Rohit
Rohit

Reputation: 37

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());
  }
}

Upvotes: 0

amoran
amoran

Reputation: 1109

You can mark a thread as a daemon using the setDaemon method provided. According to the java doc:

Marks this thread as either a daemon thread or a user thread. The Java Virtual Machine exits when the only threads running are all daemon threads.

This method must be called before the thread is started.

This method first calls the checkAccess method of this thread with no arguments. This may result in throwing a SecurityException (in the current thread).

Here an example:

Thread someThread = new Thread(new Runnable() {
    @Override
    public void run() {
        runSomething();
    }
});
someThread.setDaemon(true);
someThread.start();

Upvotes: 6

Michael Borgwardt
Michael Borgwardt

Reputation: 346536

java.lang.Thread.setDaemon(boolean)

Note that if not set explicitly, this property is "inherited" from the Thread that creates a new Thread.

Upvotes: 12

Lliane
Lliane

Reputation: 831

Yes you can

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

Upvotes: -4

Related Questions