多线程的守护线程和等待线程结束方法

守护线程的含义是:如果当前运行的所有线程都是守护线程,则程序直接结束

package thread;

/**
 * @ClassName Test7
 * @Author 瞿肖
 * @Date 2022/7/11 14:32
 */
public class Test7 extends Thread {
    @Override
    public void run() {
        for (int i = 0; i < 100; i++) {
            try {
                Thread.sleep(250);
            } catch (InterruptedException e) {
                throw new RuntimeException(e);
            }
            System.out.println(getName() + "\t" + i);
        }
    }

    public static void main(String[] args) {
        Test7 t1 = new Test7();
        t1.setDaemon(true);
        t1.start();
    }
}

点击运行就直接结束了,当然有时候会输出几个,因为性能好的cpu速度很快,没等JVM反应过来,就已经输出了。

等待线程结束方法:join()

用途是本线程结束后,继续执行下一个线程:

package thread;

/**
 * @ClassName Test7
 * @Author 瞿肖
 * @Date 2022/7/11 14:32
 */
public class Test7 extends Thread {
    @Override
    public void run() {
        for (int i = 0; i < 100; i++) {
            try {
                Thread.sleep(250);
            } catch (InterruptedException e) {
                throw new RuntimeException(e);
            }
            System.out.println(getName() + "\t" + i);
        }
    }

    public static void main(String[] args) {
        try {
            Test7 t1 = new Test7();
            t1.setDaemon(true);
            t1.start();
            t1.join();
            Test7 t2 = new Test7();
            t2.start();
            t2.join();
            for (int i = 0; i < 100; i++) {
                System.out.println(Thread.currentThread().getName() + "\t" + i);
            }
        } catch (InterruptedException e) {
            throw new RuntimeException(e);
        }
        }
    }

输出的时候是完全有序的:(输出比较长,见谅)

Thread-0	0
Thread-0	1
Thread-0	2
Thread-0	3
Thread-0	4
Thread-0	5
Thread-0	6
Thread-0	7
Thread-0	8
Thread-0	9
Thread-0	10
Thread-0	11
Thread-0	12
Thread-0	13
Thread-0	14
Thread-0	15
Thread-0	16
Thread-0	17
Thread-0	18
Thread-0	19
Thread-0	20
Thread-0	21
Thread-0	22
Thread-0	23
Thread-0	24
Thread-0	25
Thread-0	26
Thread-0	27
Thread-0	28
Thread-0	29
Thread-0	30
Thread-0	31
Thread-0	32
Thread-0	33
Thread-0	34
Thread-0	35
Thread-0	36
Thread-0	37
Thread-0	38
Thread-0	39
Thread-0	40
Thread-0	41
Thread-0	42
Thread-0	43
Thread-0	44
Thread-0	45
Thread-0	46
Thread-0	47
Thread-0	48
Thread-0	49
Thread-0	50
Thread-0	51
Thread-0	52
Thread-0	53
Thread-0	54
Thread-0	55
Thread-0	56
Thread-0	57
Thread-0	58
Thread-0	59
Thread-0	60
Thread-0	61
Thread-0	62
Thread-0	63
Thread-0	64
Thread-0	65
Thread-0	66
Thread-0	67
Thread-0	68
Thread-0	69
Thread-0	70
Thread-0	71
Thread-0	72
Thread-0	73
Thread-0	74
Thread-0	75
Thread-0	76
Thread-0	77
Thread-0	78
Thread-0	79
Thread-0	80
Thread-0	81
Thread-0	82
Thread-0	83
Thread-0	84
Thread-0	85
Thread-0	86
Thread-0	87
Thread-0	88
Thread-0	89
Thread-0	90
Thread-0	91
Thread-0	92
Thread-0	93
Thread-0	94
Thread-0	95
Thread-0	96
Thread-0	97
Thread-0	98
Thread-0	99
Thread-1	0
Thread-1	1
Thread-1	2
Thread-1	3
Thread-1	4
Thread-1	5
Thread-1	6
Thread-1	7
Thread-1	8
Thread-1	9
Thread-1	10
Thread-1	11
Thread-1	12
Thread-1	13
Thread-1	14
Thread-1	15
Thread-1	16
Thread-1	17
Thread-1	18
Thread-1	19
Thread-1	20
Thread-1	21
Thread-1	22
Thread-1	23
Thread-1	24
Thread-1	25
Thread-1	26
Thread-1	27
Thread-1	28
Thread-1	29
Thread-1	30
Thread-1	31
Thread-1	32
Thread-1	33
Thread-1	34
Thread-1	35
Thread-1	36
Thread-1	37
Thread-1	38
Thread-1	39
Thread-1	40
Thread-1	41
Thread-1	42
Thread-1	43
Thread-1	44
Thread-1	45
Thread-1	46
Thread-1	47
Thread-1	48
Thread-1	49
Thread-1	50
Thread-1	51
Thread-1	52
Thread-1	53
Thread-1	54
Thread-1	55
Thread-1	56
Thread-1	57
Thread-1	58
Thread-1	59
Thread-1	60
Thread-1	61
Thread-1	62
Thread-1	63
Thread-1	64
Thread-1	65
Thread-1	66
Thread-1	67
Thread-1	68
Thread-1	69
Thread-1	70
Thread-1	71
Thread-1	72
Thread-1	73
Thread-1	74
Thread-1	75
Thread-1	76
Thread-1	77
Thread-1	78
Thread-1	79
Thread-1	80
Thread-1	81
Thread-1	82
Thread-1	83
Thread-1	84
Thread-1	85
Thread-1	86
Thread-1	87
Thread-1	88
Thread-1	89
Thread-1	90
Thread-1	91
Thread-1	92
Thread-1	93
Thread-1	94
Thread-1	95
Thread-1	96
Thread-1	97
Thread-1	98
Thread-1	99
main	0
main	1
main	2
main	3
main	4
main	5
main	6
main	7
main	8
main	9
main	10
main	11
main	12
main	13
main	14
main	15
main	16
main	17
main	18
main	19
main	20
main	21
main	22
main	23
main	24
main	25
main	26
main	27
main	28
main	29
main	30
main	31
main	32
main	33
main	34
main	35
main	36
main	37
main	38
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
main	63
main	64
main	65
main	66
main	67
main	68
main	69
main	70
main	71
main	72
main	73
main	74
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

进程已结束,退出代码0

大家可以去掉这个方法,多输出几次,就会发现,有的时候输出并不是有序的哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值