重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

如何在java中安全的停止线程

这篇文章给大家介绍如何在java中安全的停止线程,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站设计、成都做网站、新昌网络推广、微信小程序开发、新昌网络营销、新昌企业策划、新昌品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联为所有大学生创业者提供新昌建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com

Thread.stop()是一个被废弃的方法,不被推荐使用的原因是stop方法太过于暴力,强行把执行到一半的线程终止,并且会立即释放这个线程所有的锁。会破坏了线程中引用对象的一致性。

使用判断标志位的方法中断线程

  • interrupt() //线程中断 (标志位设置为true)

  • isInterrupted() //判断是否被中断

  • interrupted() //判断是否中断,并清除当前中断状态(标志位改为false)

public static class TestThread extends Thread{
    public TestThread(String name){
      super(name);
    }

    @Override
    public void run() {
      String threadName=Thread.currentThread().getName();
      while (!isInterrupted()){  //Runnable中用 Thread.currentThread().isInterruputed
        System.out.println(threadName+" is run");
      }
      System.out.println(threadName+" flag is "+isInterrupted());
    }
  }
  public static void main(String[] args) throws InterruptedException {
    Thread testThread=new TestThread("test");
    testThread.start();
    Thread.sleep(2000);
    testThread.interrupt();
  }

当抛出 InterruptedException 异常,线程中断标志位会被复位 false, 线程不会正常中断 ,需要手动中断interrupt()

如何在java中安全的停止线程

Java的特点有哪些

Java的特点有哪些 1.Java语言作为静态面向对象编程语言的代表,实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。 2.Java具有简单性、面向对象、分布式、安全性、平台独立与可移植性、动态性等特点。 3.使用Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。

关于如何在java中安全的停止线程就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


分享名称:如何在java中安全的停止线程
文章出自:http://cqcxhl.cn/article/jdopsc.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP