Computer >> Máy Tính >  >> Lập trình >> Java

Chủ đề người dùng so với Chủ đề Daemon trong Java?


chuỗi daemon thường được sử dụng để thực hiện các dịch vụ cho các luồng người dùng. Phương thức main () của luồng ứng dụng là luồng người dùng (luồng không phải daemon) . JVM không kết thúc trừ khi tất cả chuỗi người dùng (không phải daemon) chấm dứt. Chúng tôi có thể chỉ định một cách rõ ràng một chuỗi được tạo bởi một chuỗi người dùng trở thành một chuỗi daemon bằng cách gọi setDaemon (true) . Để xác định xem một tiểu trình có phải là một tiểu trình daemon hay không bằng cách sử dụng phương thức isDaemon () .

Ví dụ

public class UserDaemonThreadTest extends Thread {
   public static void main(String args[]) {
      System.out.println("Thread name is : "+ Thread.currentThread().getName());
      // Check whether the main thread is daemon or user thread
      System.out.println("Is main thread daemon ? : "+ Thread.currentThread().isDaemon());
      UserDaemonThreadTest t1 = new UserDaemonThreadTest();
      UserDaemonThreadTest t2 = new UserDaemonThreadTest();
      // Converting t1(user thread) to a daemon thread
      t1.setDaemon(true);
      t1.start();
      t2.start();
   }
   public void run() {
      // Checking threads are daemon or not
      if (Thread.currentThread().isDaemon()) {
         System.out.println(Thread.currentThread().getName()+" is a Daemon Thread");
      } else {
         System.out.println(Thread.currentThread().getName()+" is an User Thread");
      }
   }
}

Đầu ra

Thread name is : main
Is main thread daemon ? : false
Thread-0 is a Daemon Thread
Thread-1 is an User Thread