在Java中停止线程

如果我有这样的Java代码:

public static void main(String[] args) { for(int i = 0;i<100;i++) { Future f = ThreadPoolManager.getInstance().schedule(new START(), 500); f.cancel(true); } } private class START implements Runnable { @Override public void run() { System.out.println(1); } } 

并在调试中运行它,我可以看到所有这些线程(取消后)仍在运行,所以它们也占用了我的内存吗? 如果是的话,我怎么能彻底销毁那些线程呢?

cancel(true)调用线程上的interrupt() ,仅此而已。 因此,您需要在run()方法中正确处理它。 对于你的简单情况,你的线程将完成它们的执行,它们的对象将被GC清除。