JAVA同時、バックグラウンドスレッド

5363 ワード

 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)
バックグラウンドスレッドが終了しない場合、バックグラウンドスレッドは強制的に終了します.