遇到一个奇怪的现象,线程A 在对oracle远程库访问的时候select count(*) from table@dblink 这条语句执行会出现卡死情况,无异常,如果拔网线则出连接失败异常,该现象偶然出现.怀疑是网络不稳定造成.现在想得一个解决办法:启动一个监控线程B(因为A已经无法往下运行,所以不能用设定全局变量的办法在while中自动结束自己).B在发现A卡在那条语句的时候,该如何把A线程杀掉再重起?几个办法:
1. Stop()方法,但是在新的JDK版本中已经带上删除线了,不推荐使用,说不安全,写过测试例子,确实可以停止,然后再start起来.2.所谓的interrupt()方法,经测试,发现B单纯的使用A.interrupt()是没用的,除非A程序中有 
try{
sleep(5000)
}
catch(interruptexception e){ 
this.interrupt();
}
然后还要求A的while 循环中有while(!this.isInterrupted()),才可以杀掉A线程.
请问在JAVA中用什么办法能够达到kill -9这样的效果呢?stop不能用,那么interrupt应该怎么用?是不是我用的方法不对?