Integrated: 8371748: Remove the (empty) ThreadPoolExecutor.finalize() method
Brent Christian
bchristi at openjdk.org
Fri Dec 5 19:33:05 UTC 2025
On Thu, 13 Nov 2025 23:10:59 GMT, Brent Christian <bchristi at openjdk.org> wrote:
> From the bug report:
> Prior to JDK 11, ThreadPoolExecutor.finalize() was specified to
> "[invoke] shutdown() when this executor is no longer referenced and it has no threads."
>
> In JDK 11, ThreadPoolExecutor.finalize() was re-specified to do nothing, leaving the finalize() method empty. ([JDK-8190324](https://bugs.openjdk.org/browse/JDK-8190324)).
>
> In JDK 18, finalize() was deprecated for removal ([JDK-8276447](https://bugs.openjdk.org/browse/JDK-8276447)), after first being "standard" deprecated in JDK 9 ([JDK-8165641](https://bugs.openjdk.org/browse/JDK-8165641)).
>
> The finalize() method can safely be removed from ThreadPoolExecutor.
This pull request has now been integrated.
Changeset: f3dd8daa
Author: Brent Christian <bchristi at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/f3dd8daaa92896be51254e5abf3e0ec5b1ff5173
Stats: 17 lines in 1 file changed: 0 ins; 17 del; 0 mod
8371748: Remove the (empty) ThreadPoolExecutor.finalize() method
Reviewed-by: vklang, jpai, alanb
-------------
PR: https://git.openjdk.org/jdk/pull/28311
More information about the core-libs-dev
mailing list