JAVA并发,后台线程

 1 package com.xt.thinks21_2;

 2 

 3 import java.util.concurrent.TimeUnit;

 4 

 5 /**

 6  * 后台线程测试

 7  * 

 8  * @author Administrator

 9  *

10  */

11 public class SimpleDaemonTest implements Runnable {

12 

13     @Override

14     public void run() {

15         // TODO Auto-generated method stub

16         while (true) {

17             try {

18                 TimeUnit.MILLISECONDS.sleep(100);

19                 System.out.println(Thread.currentThread() + ":" + this);

20             } catch (InterruptedException e) {

21                 // TODO Auto-generated catch block

22                 e.printStackTrace();

23             }

24         }

25     }

26 

27     public static void main(String[] args) {

28         for (int i = 0; i < 10; i++) {

29             Thread t = new Thread(new SimpleDaemonTest());

30             t.setDaemon(true);// 设置为后台线程,如果不设置则为非后台线程,会无线打印线程信息

31             t.start();

32         }

33         System.out.println("ALL DEAMON IS START!");

34         try {

35             TimeUnit.MILLISECONDS.sleep(175);// 175>100,所有每个线程信息打印一次

36         } catch (InterruptedException e) {

37             // TODO Auto-generated catch block

38             e.printStackTrace();

39         }

40     }

41 

42 }

后台线程与非后台线程的方法区别:后台线程会主动设置Thread.setDeamon(true)

当非后台线程结束时,后台线程强制结束

你可能感兴趣的:(java并发)