如何编写实现Runnable
接口(从 开始ExecutorService
)会中断线程的类的方法?
我知道我可以使用Future fut = es.submit(foo);
(并且es
是我的类的一个实例)然后从应用程序的主函数内部调用,但是我如何从类本身内部调用类似的东西呢?ExecutorService
foo
fut.cancel(true);
我想在我的 Runnable 类中有一个方法
public void stop() {…}
这样我就可以foo.stop()
从任何地方调用(包括从应用程序的主函数调用),它会像我使用过该Future.cancel
函数一样工作(如果线程正在等待获取信号量,它必须引发 ÌnterruptedException`)。