模块 java.desktop

类 IIORegistry


public final class IIORegistry extends ServiceRegistry
图像 I/O 服务提供者实例的注册表。 ServiceLoader 中记录的机制可以在运行时发现服务提供者类。目的是加载和检查所有可用的图像 I/O 服务提供程序类的成本相对较低。这些类随后可用于定位和实例化更多将执行实际工作的重量级类,在本例中为 ImageReaderImageWriterImageTranscoderImageInputStreamImageOutputStream 的实例。一旦此类被实例化,Java 运行时中包含的服务提供程序就会自动加载。

调用 registerApplicationClasspathSpis 方法时,将使用 ServiceLoader 发现其他服务提供者实例。

也可以手动添加未自动找到的服务提供者,以及删除那些使用 ServiceRegistry 类接口的服务提供者。因此,应用程序可以根据需要自定义注册表的内容。

有关如何创建和部署服务提供者的信息,请参阅ServiceLoader 上的文档

  • 方法详情

    • getDefaultInstance

      public static IIORegistry  getDefaultInstance()
      返回图像 I/O API 使用的默认 IIORegistry 实例。该实例应用于所有注册表功能。

      每个 ThreadGroup 都会收到自己的实例;这允许同一浏览器(例如)中的不同 Applet s 各自拥有自己的注册表。

      返回:
      当前 ThreadGroup 的默认注册表。
    • registerApplicationClasspathSpis

      public void registerApplicationClasspathSpis()
      使用默认值 ClassLoader 注册在应用程序类路径上找到的所有可用服务提供者。此方法通常由 ImageIO.scanForPlugins 方法调用。
      参见: