美文网首页
1.7.1停不了的线程

1.7.1停不了的线程

作者: 农家男孩 | 来源:发表于2017-06-26 22:28 被阅读0次

停止一个线程意味着在线程处理完任务之前停掉正在做的操作,也就是放弃当前的操作。虽然这看起来非常简单,但是必须做好防范措施,以便达到预期的效果。停止一个线程可以用Thread.stop()方法,但最好不用它。虽然它确实可以停止一个正在运行的线程,但是这个方法是不安全的(unsafe),而且是已被弃用作废的(deprecated),在将来的java版本中,这个方法将不可用或不被支持。

大多数停止一个线程的操作使用Thread.interrupt()方法,尽管方法的名称是“停止,中止”的意思,但这个方法不会终止一个正在运行的线程,还需要加入一个判断才可以完成线程的停止。

在java中有以下3种方法可以终止正在运行的线程:

  1. 使用退出标志,使线程正常退出,也就是当run方法完成后线程终止。
  2. 使用stop()方法强行终止线程,但是不推荐使用这个方法,因为stop和suspend及resume一样,都是作废过期的方法,使用它们可能产生不可预料的结果
  3. 使用interrupt方法中断线程。

停不了的线程

/**
 * MyThread线程测试
 * @author wuyoushan
 * @date 2017/3/21.
 */
public class MyThread extends Thread {

    @Override
    public void run() {
        super.run();
        for (int i=0;i<500000;i++){
            System.out.println("i="+(i+1));
        }
    }
}

/**
 * @author wuyoushan
 * @date 2017/3/20.
 */
public class Run {
    public static void main(String[] args) {
        MyThread myThread=new MyThread();
        myThread.start();
        try {
            Thread.sleep(2000);
            //中断线程
            myThread.interrupt();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

从程序的运行结果来看,调用interrupt方法并没有停止线程。

i=499994
i=499995
i=499996
i=499997
i=499998
i=499999
i=500000

摘选自 java多线程核心编程技术-1.7.1

相关文章

  • 1.7.1停不了的线程

    停止一个线程意味着在线程处理完任务之前停掉正在做的操作,也就是放弃当前的操作。虽然这看起来非常简单,但是必须做好防...

  • 停不了

    迈开脚丫 朝向海岸 停不了奔跑的冲动 海风一声声呼唤 飞鸟也在盘旋 扑进蓝色世界 寻找你是否藏在中间 阳光洒下 宝...

  • flink安装

    Flink 1.7.1集群安装:配置:hadoop-2.7.6,scala-2.11.12,Flink-1.7.1...

  • 移除cocoapods版本

    "大家不要使用 cocoapods1.7.1的版本,因为 cocoapods1.7.1会创建和使用 xcfilel...

  • 停不了的爱

    老妈说,田野里的蒲公英开了,雪白雪白的花儿飘的到处都是。蒲公英清热去火,用它泡出来的水,有种淡淡的清香。她知道我容...

  • 停不了的更

    【600】每日步行第600天 我真的想停止日更了,可是根本就停不下来。 最近每天的日更都没修改,有时候甚至写了就发...

  • 停不了的爱

    青阳,桃柯,向南一枝红。驻足,蹲下,却为一颗蒲公英。 它已是成熟了呀,一球千羽,纤纤柔柔,小心地掐了,圆满便失了半...

  • 停不了的飞鸟

    她是一只鸟,一只不停飞的鸟。 他一直都在抬头仰望她, 她飞到多快,多远,美丽极了。 其他的雄性鸟都在她后面追...

  • 停不了的爱

    “我愿飘向远方,一直向前,不停止,哪怕风阻挡我的方向。” 蒲公英说。 她很勇敢,只要心中有爱就会毫不保留的说...

  • 停不了的乐事!

    生活需要乐事,生活有乐事! 乐事从开始到现在已经推出了: 德克萨斯烧烤味、墨西哥鸡汁番茄味、意大利香浓红烩味 还...

网友评论

      本文标题:1.7.1停不了的线程

      本文链接:https://www.haomeiwen.com/subject/clbwfxtx.html