玉米蛇种类及价格:在java中如何中止一个线程?

来源:百度文库 编辑:高考问答 时间:2024/05/04 02:30:44
java中怎么停掉一个线程
就是突然让它停下来,直接退出

里面有一个方法是interrupt(),但不管用,我执行了这个方法之后这个线程还是执行 !有谁能告诉我

你那个线程是否在睡觉呢?(调用了sleep())
等它醒来要让它检查一下是否被人给interupt了
调用isInterupted()就行了,这样才能将它停掉

你也可以在一个方法内部将它停掉:
class Cat{
synchronized syn_method(){
//do something;
this.wait();
}
.....
public void run(){
a_cat.syn_method();
}
然后再用a_cat的另一个引用:
a_cat.notifyAll();将它唤醒
或者不唤醒,让它停掉

或者这样:
boolean toStop=false;
....
public void run(){
while(!toStop){
//do something
}
}
....
toStop=true;就将它停了;

start()方法启动线程,
stop()方法退出线程。
sleep(long mille)睡眠线程一定微妙.

有两类方法

一是通过Thread类的stop()方法,使用此类方法一般要在它的父线程中保存线程对象变量

二是从线程函数中(使用return)主动退出,这种方法可以通过公共变量等方式实现线程间通讯已决定何时退出

Thread.stop()