IT干货网

守护线程

luoye 2022年03月12日 编程设计 159 0

守护线程

守护线程包括后台记录、垃圾回收等杂事。java虚拟机只会保证用户线程执行完毕,而守护线程不被保证。

以下代码自定义一个守护线程:

package com.cxf.multithread.daemon; 
 
public class TestForDaemon { 
    public static void main(String[] args) { 
        Thread thread1 = new Thread(new MyJob()); 
        Thread thread2 = new Thread(new Daemon()); 
        thread2.setDaemon(true); 
        thread1.start(); 
        thread2.start(); 
    } 
} 
 
class MyJob implements Runnable{ 
    @Override 
    public void run() { 
        for (int i = 0; i < 5; i++) { 
            System.out.println("i am running"); 
        } 
        System.out.println("job finished"); 
    } 
} 
 
class Daemon implements Runnable{ 
 
    @Override 
    public void run() { 
        for (int i = 0; i < 100; i++) { 
            System.out.println("Daemon is running"); 
        } 
        System.out.println("Daemon finished"); 
    } 
} 

输出结果:

i am running 
i am running 
i am running 
i am running 
i am running 
job finished 
Daemon is running 
Daemon is running 
Daemon is running 
Daemon is running 
Daemon is running 
Daemon is running 
Daemon is running 
Daemon is running 
Daemon is running 
Daemon is running 
Daemon is running 

使用setDaemon方法来让一个线程变为守护线程。


评论关闭
IT干货网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

线程的优先级