救命,关于java中终止线程问题
public class CalculateThread extends Thread{
private EntityDataRetrieveCondition conditions = null;
public CalculateThread(EntityDataRetrieveCondition conditions){
this.conditions = conditions;
}
public void run(){
FilterCalTypeSet filterCalTypeSet = new FilterCalTypeSet();
filterCalTypeSet.executeCalculate(conditions);
}
}
public void A{
CalculateThread calculation = null;
calculation = new CalculateThread(conditions);
try {
calculation.start();
????????如何结束当前线程
} catch (NamingException e) {
System.out.println(e);
}
}
------解决方案--------------------calculation.interrupt();
------解决方案--------------------很奇怪,楼主你为什么刚把线程起起来就要将其停掉,CalculateThread 这个线程的Run方法执行完后不线程不就退出了么?
interrupt()方法可以立即中断线程
------解决方案--------------------1、程序执行完了自动结束。
2、stop()方法
3、使用布尔变量判断。
------解决方案--------------------run方法执行完毕自然结束啊
------解决方案--------------------stop()在jdk1.2就是不推荐的方法了。在jdk1.5可以用不过在某些开发环境会有不安全警告。