java如何停止一个线程

  介绍

小编给大家分享一下java如何停止一个线程,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

如何停止java的线程一直是一个开发多线程程序常遇到的一个问题。也有好多人问过我,所以今天在这里总结一下希望可以让更多的人知道在java中如何安全的结束一个正在运行的线程。

在java的多线程编程中,java.lang.Thread类型包含了一些列的方法开始(),停止(),停止(Throwable)和暂停(),摧毁()和()恢复。通过这些方法,我们可以对线程进行方便的操作,但是这些方法中,只有开始()方法得到了保留。

在JDK帮助文档以及太阳公司的一篇文章《为什么线程。停止,线程。暂停和线程。简历不?》中都讲解了舍弃这些方法的原因。

<强>那么,我们究竟应该如何停止线程呢?

<强>用共享变量的方式
在这种方式中,之所以引入共享变量,是因为该变量可以被多个执行相同任务的线程用来作为是否中断的信号,通知中断线程的执行。

公共类ThreadFlag延伸线   {   公共动荡的布尔退出=false;      公共空间run ()   {   而(退出);   }   公共静态void main (String [] args)抛出异常   {   ThreadFlag线程=new ThreadFlag ();   thread.start ();   睡眠(3000);//主线程延迟3秒   线程。退出=true;//终止线程线程   thread.join ();   System.out.println(“线程退出!“);   }   }

在上面代码中定义了一个退出标志退出,当退出为真时,而循环退出,退出的默认值为假的。在定义退出时,使用了一个Java关键字不稳定,这个关键字的目的是使出口同步,也就是说在同一时刻只能由一个线程来修改退出的值。

以上是Java如何停止一个线程的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

java如何停止一个线程