多线程(六)守护线程和非守护线程

阳光穿透心脏的1/2处 2022-03-08 02:06 527阅读 0赞

什么是守护线程?什么是非守护线程?

守护线程是和main有关的

用户线程,用户自己创建的线程,用户创建线程,如果主线程停止掉,不会影响用户线程。

用户线程也叫非守护线程

守护线程的特征:守护线程和主线程一起销毁

非守护线程的特征:非守护线程和守护线程互不影响

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L09ubHlvbmVGcmlzdA_size_16_color_FFFFFF_t_70

非守护线程Demo

  1. package com.zuojie;
  2. /**
  3. * 用户线程 是主线程创建的线程 非守护线程
  4. *
  5. * @author zuojie
  6. *
  7. */
  8. public class ThreadDemo05 {
  9. public static void main(String[] args) {
  10. Thread t1 = new Thread(new Runnable() {
  11. public void run() {
  12. for (int i = 0; i < 30; i++) {
  13. try {
  14. Thread.sleep(3000);
  15. } catch (InterruptedException e) {
  16. e.printStackTrace();
  17. }
  18. System.out.println("子线程,i:" + i);
  19. }
  20. }
  21. });
  22. t1.start();
  23. for (int i = 0; i < 5; i++) {
  24. System.out.println("主线程,i:" + i);
  25. }
  26. System.out.println("主线程执行完毕。。。。。");
  27. }
  28. }

运行结果

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L09ubHlvbmVGcmlzdA_size_16_color_FFFFFF_t_70 1

守护线程Demo

  1. package com.zuojie;
  2. /**
  3. * 用户线程 是主线程创建的线程 非守护线程
  4. *
  5. * @author zuojie
  6. *
  7. */
  8. public class ThreadDemo05 {
  9. public static void main(String[] args) {
  10. Thread t1 = new Thread(new Runnable() {
  11. public void run() {
  12. for (int i = 0; i < 30; i++) {
  13. try {
  14. Thread.sleep(300);
  15. } catch (InterruptedException e) {
  16. e.printStackTrace();
  17. }
  18. System.out.println("子线程,i:" + i);
  19. }
  20. }
  21. });
  22. t1.setDaemon(true);// 该线程 是守护线程 和主线程一起销毁
  23. t1.start();
  24. for (int i = 0; i < 5; i++) {
  25. try {
  26. Thread.sleep(300);
  27. } catch (InterruptedException e) {
  28. e.printStackTrace();
  29. }
  30. System.out.println("主线程,i:" + i);
  31. }
  32. System.out.println("主线程执行完毕。。。。。");
  33. }
  34. }

运行结果

20190313235518332.png

发表评论

表情:
评论列表 (有 0 条评论,527人围观)

还没有评论,来说两句吧...

相关阅读

    相关 线-守护线

    守护线程的概念是: 当一个进程里,所有的线程都是守护线程的时候,结束当前进程。 就好像一个公司有销售部,生产部这些和业务挂钩的部门。 除此之外,还有后勤,行政等这