【Java 多线程并发】终止线程 4 种方式

1.正常运行结束

程序运行结束,线程自动结束。

2.使用退出标志退出线程

一般 run() 方法执行完,线程就会正常结束。然而,常常有些线程是伺服线程。

伺服线程,不间断地执行,往往在run方法中有一个死循环,监视着某些条件,只有当这些条件满足时才能结束。

使用一个变量来控制循环,例如:最直接的方法就是设一个 boolean 类型的标志,并通过设置这个标志为 true 或 false 来控制 while 循环是否退出,代码示例:

public class ThreadSafe extends Thread {
    public volatile boolean exit = false;
    public void run() {
        while(!exit) {
            // do something
        }
    }
}

定义了一个退出标志 exti ,当 exit 为 true 时,while 循环退出,exit 的默认值为 false。

在定义 exit 时,使用了一个 Java 关键字 volatile,这个关键字的目的是使 exit 同步,也就是说同一时刻只能有一个线程来修改 exit 的值。

3. Interrupt 方法结束线程

使用 interrupt() 方法来中断线程有两种情况

已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值