怎么中止线程ITeye - 凯时娱乐

怎么中止线程ITeye

2019年04月01日13时38分49秒 | 作者: 若山 | 标签: 中止,线程,办法 | 浏览: 530

在java中有以下3种办法能够中止正在运转的线程:

1.运用退出标志,使线程正常退出,也便是当run办法完结后线程中止。

2.运用stop办法强行中止,可是不引荐这个办法,由于stop和suspend及resume相同都是过期报废的办法。

3.运用interrupt办法中止线程。

 

调用interrupt办法是在当时线程中打了一个中止标志,并不是真的中止线程。

中止是一种协作机制。一个线程不能强制其它线程中止正在履行的操作而去履行其它的操作。

中止一个线程最佳实践是 中止 + 条件变量。

 

判别线程是否中止状况

this.interrupted(): 测验当时线程是否现已中止;线程的中止状况由该办法铲除。假如接连两次调用该办法,则第2次调用回来false。

this.isInterrupted(): 测验线程是否现已中止;

 

interrupt在sleep状况下中止某一线程,会进入catch句子,抛出java.lang.InterruptedException反常,而且铲除中止状况值,使之变为false。

调用stop()办法时会抛出java.lang.ThreadDeath反常,可是通常状况下,此反常不需要显现地捕捉。

stop()办法以及报废,由于假如强制让线程中止有可能使一些清理性的作业得不到完结。别的一个状况便是对确定的目标进行了解锁,导致数据得不到同步的处理,呈现数据不一致的问题。

 

中止线程的方法

反常法、在熟睡中中止、暴力中止、return中止

 

 

引证地址:

http://www.cnblogs.com/greta/p/5624839.html

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表凯时娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章

阅读排行

  • 1

    怎么中止线程ITeye

    中止,线程,办法
  • 2
  • 3

    [C#]Console类的详细用法ITeye

    控制台,字符串,输出
  • 4

    ehcache基本原理ITeye

    缓存,磁盘,是否
  • 5
  • 6
  • 7

    KMPITeye

    匹配,长串,短串
  • 8

    ruby编码问题小结ITeye

    办法,第章,编程
  • 9
  • 10

    mysql分页问题。ITeye

    分页,大约,数据库