使用后清理 FutureTask

Cleanup FutureTask after using

我想知道在 FutureTask 完成他的工作并且我可以成功从中获取结果后,我是否应该清理 FutureTask 以释放资源?或者 FutureTask 在完成作业后一定时间后会自动清理?

谢谢。


FutureTask 有点不可变。一旦设置了它的值和状态,它们就无法更改。除此之外,FutureTask 与任何其他 Java 对象一样,因此您无需执行任何操作。一旦不再有对它的引用,它就有资格进行 GC。这意味着,一旦它超出范围,它将被 GC 处理,或者如果您坚持可以通过为其分配 null 来删除引用。如果您的代码编写得很好,则不应将 null 设置为任何引用 - 每个对象都应该存在于尽可能小的范围内。