1、什么是守护线程?

    今天老师讲解我才知道有守护线程这回事!原来守护线程经常存在于我们的身边,比如:一个免费的网页游戏,里面都会或多或少有些插入性的广告!!

一般情况下,我们不会去点击这些广告的,但是广告商是需要点击量的啊!所以制作游戏的人会背地里使用守护线程去访问这个广告界面,但是我们用户是不知道

的!就是守护线程一般对用户不可见,对背后的程序员可见!

    再比如:我们使用的QQ软件,我们可以一边聊天,一边更新QQ软件!当我们聊天结束,关闭QQ的时候,你会发现,QQ更新的操作也被终止了!

其实:更新QQ的操作就是一个守护线程操作着的!

    

2、守护线程的特点:

     主线程结束了,那么守护线程也会停止! 

/**********使用方式*****************/
HelpThread ht=new HelpThread(); ht.setDaemon(true);//设置线程为守护线程

  

3、举例说明:

 package cn.sxt.helpthreads;
/**
* 守护线程:
*
* 模拟:
* QQ聊天,一边聊天,一边使用QQ下载更新,当更新还未完成的时候,聊天结束,则下载也结束!
* @author 小风微灵
*
*/
public class HelpThread extends Thread{ public void run() { for(int i=0;i<=100;i++){
System.out.println("守护线程---正在下载,进度:"+i+"%");
if(i==100){
System.err.println("下载完成准备安装......");
}
} }
public static void main(String[] args) { HelpThread ht=new HelpThread(); ht.setDaemon(true);//设置线程为守护线程 System.err.println("下载线程是否是守护线程:"+ht.isDaemon());//true:是守护线程 false:不是守护线程
ht.start();
for(int i=0;i<=100;i++){
System.out.println(Thread.currentThread().getName()+"聊天中...."+i); } } }

运行结果:

 下载线程是否是守护线程:true
main聊天中....0
main聊天中....1
守护线程---正在下载,进度:0%
main聊天中....2
守护线程---正在下载,进度:1%
main聊天中....3
守护线程---正在下载,进度:2%
main聊天中....4
守护线程---正在下载,进度:3%
main聊天中....5
守护线程---正在下载,进度:4%
守护线程---正在下载,进度:5%
main聊天中....6
守护线程---正在下载,进度:6%
main聊天中....7
守护线程---正在下载,进度:7%
main聊天中....8
守护线程---正在下载,进度:8%
main聊天中....9
守护线程---正在下载,进度:9%
main聊天中....10
守护线程---正在下载,进度:10%
main聊天中....11
守护线程---正在下载,进度:11%
main聊天中....12
守护线程---正在下载,进度:12%
main聊天中....13
守护线程---正在下载,进度:13%
main聊天中....14
守护线程---正在下载,进度:14%
main聊天中....15
守护线程---正在下载,进度:15%
main聊天中....16
守护线程---正在下载,进度:16%
main聊天中....17
守护线程---正在下载,进度:17%
main聊天中....18
守护线程---正在下载,进度:18%
main聊天中....19
守护线程---正在下载,进度:19%
main聊天中....20
守护线程---正在下载,进度:20%
main聊天中....21
守护线程---正在下载,进度:21%
main聊天中....22
守护线程---正在下载,进度:22%
main聊天中....23
守护线程---正在下载,进度:23%
main聊天中....24
守护线程---正在下载,进度:24%
main聊天中....25
守护线程---正在下载,进度:25%
main聊天中....26
守护线程---正在下载,进度:26%
main聊天中....27
守护线程---正在下载,进度:27%
main聊天中....28
守护线程---正在下载,进度:28%
main聊天中....29
守护线程---正在下载,进度:29%
main聊天中....30
守护线程---正在下载,进度:30%
main聊天中....31
守护线程---正在下载,进度:31%
main聊天中....32
守护线程---正在下载,进度:32%
main聊天中....33
守护线程---正在下载,进度:33%
main聊天中....34
守护线程---正在下载,进度:34%
main聊天中....35
守护线程---正在下载,进度:35%
main聊天中....36
守护线程---正在下载,进度:36%
main聊天中....37
守护线程---正在下载,进度:37%
main聊天中....38
守护线程---正在下载,进度:38%
守护线程---正在下载,进度:39%
守护线程---正在下载,进度:40%
守护线程---正在下载,进度:41%
守护线程---正在下载,进度:42%
守护线程---正在下载,进度:43%
守护线程---正在下载,进度:44%
守护线程---正在下载,进度:45%
守护线程---正在下载,进度:46%
守护线程---正在下载,进度:47%
守护线程---正在下载,进度:48%
守护线程---正在下载,进度:49%
守护线程---正在下载,进度:50%
守护线程---正在下载,进度:51%
守护线程---正在下载,进度:52%
守护线程---正在下载,进度:53%
守护线程---正在下载,进度:54%
守护线程---正在下载,进度:55%
守护线程---正在下载,进度:56%
守护线程---正在下载,进度:57%
守护线程---正在下载,进度:58%
守护线程---正在下载,进度:59%
守护线程---正在下载,进度:60%
守护线程---正在下载,进度:61%
守护线程---正在下载,进度:62%
守护线程---正在下载,进度:63%
守护线程---正在下载,进度:64%
main聊天中....39
main聊天中....40
main聊天中....41
main聊天中....42
main聊天中....43
main聊天中....44
main聊天中....45
main聊天中....46
main聊天中....47
main聊天中....48
main聊天中....49
main聊天中....50
main聊天中....51
main聊天中....52
main聊天中....53
main聊天中....54
main聊天中....55
main聊天中....56
main聊天中....57
main聊天中....58
main聊天中....59
main聊天中....60
main聊天中....61
main聊天中....62
守护线程---正在下载,进度:65%
守护线程---正在下载,进度:66%
守护线程---正在下载,进度:67%
守护线程---正在下载,进度:68%
守护线程---正在下载,进度:69%
守护线程---正在下载,进度:70%
守护线程---正在下载,进度:71%
守护线程---正在下载,进度:72%
守护线程---正在下载,进度:73%
守护线程---正在下载,进度:74%
守护线程---正在下载,进度:75%
守护线程---正在下载,进度:76%
守护线程---正在下载,进度:77%
守护线程---正在下载,进度:78%
守护线程---正在下载,进度:79%
守护线程---正在下载,进度:80%
main聊天中....63
守护线程---正在下载,进度:81%
守护线程---正在下载,进度:82%
守护线程---正在下载,进度:83%
守护线程---正在下载,进度:84%
守护线程---正在下载,进度:85%
守护线程---正在下载,进度:86%
守护线程---正在下载,进度:87%
守护线程---正在下载,进度:88%
守护线程---正在下载,进度:89%
main聊天中....64
守护线程---正在下载,进度:90%
main聊天中....65
守护线程---正在下载,进度:91%
main聊天中....66
守护线程---正在下载,进度:92%
main聊天中....67
守护线程---正在下载,进度:93%
main聊天中....68
守护线程---正在下载,进度:94%
main聊天中....69
守护线程---正在下载,进度:95%
main聊天中....70
守护线程---正在下载,进度:96%
main聊天中....71
守护线程---正在下载,进度:97%
main聊天中....72
守护线程---正在下载,进度:98%
main聊天中....73
守护线程---正在下载,进度:99%
main聊天中....74
守护线程---正在下载,进度:100%
main聊天中....75
下载完成准备安装......
main聊天中....76
main聊天中....77
main聊天中....78
main聊天中....79
main聊天中....80
main聊天中....81
main聊天中....82
main聊天中....83
main聊天中....84
main聊天中....85
main聊天中....86
main聊天中....87
main聊天中....88
main聊天中....89
main聊天中....90
main聊天中....91
main聊天中....92
main聊天中....93
main聊天中....94
main聊天中....95
main聊天中....96
main聊天中....97
main聊天中....98
main聊天中....99
main聊天中....100

Java线程(学习整理)--1--守护线程的更多相关文章

  1. JAVA并发实现四(守护线程和线程阻塞)

    守护线程     Java中有两类线程:User Thread(用户线程).Daemon Thread(守护线程) 用户线程即运行在前台的线程,而守护线程是运行在后台的线程. 守护线程作用是为其他前台 ...

  2. 【Java并发编程】:守护线程与线程阻塞的四种情况

    守护线程 JAVA中有两类线程:User Thread(用户线程).Daemon Thread(守护线程) 用户线程即运行在前台的线程,而守护线程是运行在后台的线程. 守护线程作用是为其他前台线程的运 ...

  3. Java多线程系列 基础篇03 线程的优先级和守护线程

    1. 线程优先级 现代操作系统中基本上使用时间分片的方式调度线程,通过设置线程优先级,使优先级高的线程获得时间片的次数多于优先级低的线程. 在java 线程中,通过一个整形变量prority来控制优先 ...

  4. 用户线程 (User Thread)、守护线程 (Daemon Thread)

    在Java中有两类线程:用户线程 (User Thread).守护线程 (Daemon Thread). 所谓守护 线程,是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称 ...

  5. JoinableQueue队列,线程,线程于进程的关系,使用线程,线程的特点,守护线程,线程的互斥锁,死锁问题,递归锁,信号量

    1.JoinableQueue队列 JoinableQueue([maxsize]):这就像是一个Queue对象,但是队列允许项目的使用者通知生成者项目已经被成功处理.通知进程是使用共享的信号和条件变 ...

  6. day33 线程的创建 验证线程之间共享数据 守护线程 线程进程效率对比 锁 死锁 递归锁

    今日内容: 1.线程理论 2.锁: 牺牲了效率,保证了数据的安全(重点) 3.守护线程 4.GIL锁:(重点) 5.计算密集型和IO密集型 6.信号量,事件(了解) 7.补充. 子进程中不能input ...

  7. Java并发学习之中的一个——线程的创建

    本文是学习网络上的文章时的总结,感谢大家无私的分享. 1.与每一个Java语言中的元素一样,线程是对象.在Java中,我们有两种方式创建线程: a.通过直接继承thread类,然后覆盖run方法. b ...

  8. Android(java)学习笔记65:线程的生命周期

    1. 我们学习线程本质就是学习如何开始线程和终止线程.下面这个关于线程的生命周期图,要牢记: 新建状态:当程序使用new关键字创建了一个线程之后,该线程就处于新建状态.此时和其他Java对象一样,它仅 ...

  9. Android(java)学习笔记64:线程的控制

    1. 线程休眠: Java中线程休眠指让正在运行的线程暂停执行一段时间,进入阻塞状态,通过调用Thread类的静态方法sleep得以实现. 当线程调用sleep进入阻塞状态后,在其休眠的时间内,该线程 ...

  10. Java多线程学习(八)线程池与Executor 框架

    目录 历史优质文章推荐: 目录: 一 使用线程池的好处 二 Executor 框架 2.1 简介 2.2 Executor 框架结构(主要由三大部分组成) 2.3 Executor 框架的使用示意图 ...

随机推荐

  1. [LeetCode#201] Bitwise AND of Numbers Range

    Problem: Given a range [m, n] where 0 <= m <= n <= 2147483647, return the bitwise AND of al ...

  2. 51Testing丛书新作《软件测试工程师面试秘籍》

    51Testing又有好消息告诉小伙伴了!51Testing软件测试网作品系列重磅推出全新丛书<软件测试工程师面试秘籍> 此次我们邀请到知名互联网企业测试专家李江(G.li),整理并撰写软 ...

  3. 新学Linux时遇到的一些问题

    1.如何进入到Linux的命令终端 (1)按ctrl+alt+t (2)按ctrl+alt+(F1-F6都可以),按ctrl+alt+F7退出 2.按ctrl+alt+(F1-F6)进入命令终端,登录 ...

  4. HDOJ/HDU 2537 8球胜负(水题.简单的判断)

    Problem Description 8球是一种台球竞赛的规则.台面上有7个红球.7个黄球以及一个黑球,当然还有一个白球.对于本题,我们使用如下的简化规则:红.黄两名选手轮流用白球击打各自颜色的球, ...

  5. 自定义UITableView的Seperator

    在默认配置中 ,UITableView的Cell之间的Seperator左边总是空出一块,即使在Storyboard中设置为0 ,也没有效果 需要在代码中进行配置,在ViewController中实现 ...

  6. Hardwood floor - SGU 131(状态压缩)

    题目大意:用 2*1 或者2*2-1的格子覆盖M*N的矩阵,有多少种覆盖方式. 分析:容易知道有以下6种放置方式. 然后用深搜的方法直接搞出来就行了,不过要使用两个变量来判断本位是否受影响.如果本行的 ...

  7. Java多线程实现简单的售票程序

    设计一个多线程程序如下:设计一个火车售票模拟程序.假如火车站要有100张火车票要卖出,现在有5个售票点同时售票,用5个线程模拟这5个售票点的售票情况 1.要求打印出每个售票点所卖出的票号 2.各售票点 ...

  8. Java的序列化与反序列化(一):初识

    Java提供了一种对象序列化的机制:一个对象可以被表示为一个字节序列,该字节序列包含对象的数据.有关对象的类型的信息和存储在对象中数据的类型. 将序列化对象写入文件之后,可以从文件中读取出来,并且对它 ...

  9. jquery中字符串类型转换成整形的方法

    jQuery有一个自带的函数为parseInt():这个函数可以把字符型的数字转换成整形例如: parseInt("1234"); //返回1234 parseInt(" ...

  10. Python爬取CSDN博客文章

    0 url :http://blog.csdn.net/youyou1543724847/article/details/52818339Redis一点基础的东西目录 1.基础底层数据结构 2.win ...