标签: java multithreading executorservice
我使用Executor Service启动了一些线程来从网络获取一些文件。我希望线程在一段时间后停止执行,即使它们的run方法没有完成。 怎么做?即使执行者的shutdown()和awaitTermination(...)方法也不起作用。
答案 0 :(得分:4)
简单的答案是,你做不到。 Thread.stop()在很久很久以前就被弃用了,因为它不可靠,容易留下脏资源。
你唯一可以做的就是让你的线程在其工作负载期间暂停并检查退出条件(如被中断或超过某个预定义的时间限制)。