多线程----守护线程---Deamon
来源:互联网 发布:用数据包怎么传淘宝 编辑:程序博客网 时间:2024/06/05 15:36
public final void setDaemon(boolean on)
守护线程(后台线程)
setDaemon(boolean on):将该线程标记为守护线程或者用户线程。当主线程结束,守
护线程自动结束, 当正在运行的线程都是守护线程时,java 虚拟机jvm 退出, 该方法必须在
启动线程前调用;
守护线程的特点:
守护线程开启后和前台线程共同抢夺cpu 的执行权,开启、运行两者都没区别,
但结束时有区别,当所有前台线程都结束后,守护线程会自动结束。
Deamon//守护线程,标记。如果进程中运行的线程都是守护线程,该进程终止了。
package java.thread;import java.util.Date;/** * 守护线程:Deamon */public class TreadDeamonDemo { public static void main(String[] args) { KTV k1 = new KTV("r1", 5); KTV k2 = new KTV("r1", 8); Waiter w = new Waiter(""); //守护线程 w.setDaemon(true); k1.start(); k2.start(); w.start(); }}/** * KTV包箱 */class KTV extends Thread { private String name0; private int sleep; public String getName0() { return name0; } public void setName0(String name0) { this.name0 = name0; } public int getSleep() { return sleep; } public void setSleep(int sleep) { this.sleep = sleep; } public KTV(String name0, int sleep) { this.name0 = name0; this.sleep = sleep; } @Override public void run() { try { System.out.println(name0 + "开始营业了"); Thread.sleep(sleep * 1000); System.out.println(name0 + "号包厢买单了" + "耗时" + sleep + "秒"); } catch (InterruptedException e) { e.printStackTrace(); } }}/** * 服务员 */class Waiter extends Thread { private String name0; private int sleep; public String getName0() { return name0; } public void setName0(String name0) { this.name0 = name0; } public Waiter(String name0) { this.name0 = name0; } @Override public void run() { while(true){ System.out.println(new Date()); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } }}
注意:一般把守护线程做成死循环,如果进程中运行的线程都是守护线程,该进程终止了。
模拟结果:
r1开始营业了
r1开始营业了
Sat Jul 29 11:48:54 CST 2017
Sat Jul 29 11:48:55 CST 2017
Sat Jul 29 11:48:56 CST 2017
Sat Jul 29 11:48:57 CST 2017
Sat Jul 29 11:48:58 CST 2017
r1号包厢买单了耗时5秒
Sat Jul 29 11:48:59 CST 2017
Sat Jul 29 11:49:00 CST 2017
Sat Jul 29 11:49:01 CST 2017
r1号包厢买单了耗时8秒
Process finished with exit code 0
阅读全文
0 0
- 多线程----守护线程---Deamon
- 守护线程(Deamon)
- java守护线程(deamon)学习
- (一)线程管理_6---创建守护线程(deamon thread)
- 关于守护进程deamon
- python 守护进程deamon
- deamon守护进程
- 多线程的守护线程
- java多线程-守护线程
- java多线程-守护线程
- Java 多线程 - 守护线程
- Java 多线程守护线程
- Python3多线程--守护线程&非守护线程
- java多线程之守护线程
- 4.多线程之守护线程
- Java多线程-线程的调度(守护线程)
- java多线程:线程的调度-守护线程
- Java多线程 -- 线程的调度-守护线程
- 【python学习笔记】26:scipy卷积运算
- 解决img之间的间隙
- bzoj2464
- 银行业和游戏业的技术体系架构
- 以太网帧格式详解
- 多线程----守护线程---Deamon
- 逻辑一致、交叉验证
- Python中数据类型
- 管理网络
- 简单易用的MVC框架:VRaptor
- 三、MongoDB的基本概念之集合
- 图像基础5 图像匹配--差分矩阵求和与均值
- 大规模公有云的自动化工具
- SPOJ-PT07Y Is it a tree DFS/并查集