本文共 1084 字,大约阅读时间需要 3 分钟。
下面通过代码来演示一下守护线程
package org.javaboy;/** * @Author: bai * @DateTime: 2020/6/7 19:06 */// 测试守护线程public class TestDaemon { public static void main(String[] args) { God god = new God(); You you = new You(); Thread thread = new Thread(god); thread.setDaemon(true); // 默认是false,表示是用户线程,正常的线程都是用户线程 thread.start(); // 上帝守护着你 new Thread(you).start(); // 用户线程启动 }}// 上帝class God implements Runnable { @Override public void run() { while (true) { System.out.println("上帝守护着你!"); } }}// 用户class You implements Runnable { @Override public void run() { for (int i = 0; i < 36500; i++) { System.out.println("你一生都开心的活着!"); } System.out.println("=====goodbye,world!====="); }}
代码解释:首先模拟God类是上帝,上帝作为守护线程守护着 You,而 You 负责开心的活着,做自己的事情。
在主线程中通过thread.setDaemon(true)
方法将 God 作为守护线程,此方法默认是 false,表示是用户线程,正常的线程都是用户线程。 最后通过运行结果可以得知:虚拟机不用等待守护线程执行完毕
这里的守护线程就是 God 类。
转载地址:http://vvqwi.baihongyu.com/