我在我的线程中使用第三方库,其中涉及一些繁重的数据库操作。有时由于数据库上的锁定或任何其他原因线程执行被卡住。我想杀死线程,不管它在特定时间间隔之后做什么。Thread.interrupt() 对我不起作用,因为我的线程大部分时间都花在我无法修改的第三方库中,并且库不会抛出任何我可以在我的代码中处理的中断异常。不建议使用 Thread.stop() ,因为它已被弃用。但无论如何我必须杀死线程
void mainThread()
{
Thread1 t1 = new Thread1();
t1.start();
Thread.sleep(time);
if(t1.getState() != State.TERMINATED)
{
// code for killing the thread
}
}
Thread1()
{
//doing heavy DB operations using third party Library
}
欢迎对其他设计提出任何建议。是否有任何替代方法可以杀死线程而不是 thread.stop()