Integrated: 8365292: Remove javax.imageio.spi.ServiceRegistry.finalize()
Phil Race
prr at openjdk.org
Mon Aug 25 17:05:18 UTC 2025
On Tue, 12 Aug 2025 19:32:33 GMT, Phil Race <prr at openjdk.org> wrote:
> Remove javax.imageio.spi.ServiceRegistry.finalize() since it is deprecated for removal.
> The impact of this should be minimal. The IIORegistry will now be a singleton - which it already was
> in practice since Applets are no longer supported. Since it is a singleton, it will persist for the life
> of the VM, so will never be garbage collected.
> A test that verifies one per-AppContext is now obsolete, and is deleted, and there's no good reason to make it a negative test, since in due course AppContext itself will be deleted and is un-used today except in tests.
>
> Since JDK 9, ServiceRegistry has supported only Image I/O specified providers, and since the IIORegistry does this,
> in practice there is very little reason for an application to create instances or subclasses of it.
> And even if they do, typically like IIORegistry, they be used for the life time of the application.
> And if they are collected, without calling ServiceRegistry.deregisterAll() there may be no impact,
> since only providers that implement RegisterableService will be affected.
>
> See the JBS issue for all the details.
>
> The CSR is ready for review https://bugs.openjdk.org/browse/JDK-8365409
This pull request has now been integrated.
Changeset: 040cc7ae
Author: Phil Race <prr at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/040cc7aee03e82e70bcbfcd2dde5cd4b35faeabd
Stats: 192 lines in 3 files changed: 8 ins; 180 del; 4 mod
8365292: Remove javax.imageio.spi.ServiceRegistry.finalize()
8359391: Remove ThreadGroup sandboxing from javax.imageio
Reviewed-by: serb, jdv, azvegint
-------------
PR: https://git.openjdk.org/jdk/pull/26752
More information about the client-libs-dev
mailing list