- java.lang.Object
-
- java.nio.channels.spi.AsynchronousChannelProvider
-
-
构造方法摘要
构造方法 变量 构造器 描述 protected
AsynchronousChannelProvider()
初始化此类的新实例。
-
方法摘要
所有方法 静态方法 实例方法 抽象方法 具体的方法 变量和类型 方法 描述 abstract AsynchronousChannelGroup
openAsynchronousChannelGroup(int nThreads, ThreadFactory threadFactory)
构造具有固定线程池的新异步通道组。abstract AsynchronousChannelGroup
openAsynchronousChannelGroup(ExecutorService executor, int initialSize)
使用给定的线程池构造一个新的异步通道组。abstract AsynchronousServerSocketChannel
openAsynchronousServerSocketChannel(AsynchronousChannelGroup group)
打开异步服务器套接字通道。abstract AsynchronousSocketChannel
openAsynchronousSocketChannel(AsynchronousChannelGroup group)
打开异步套接字通道。static AsynchronousChannelProvider
provider()
返回此Java虚拟机调用的系统范围默认异步通道提供程序。
-
-
-
构造方法详细信息
-
AsynchronousChannelProvider
protected AsynchronousChannelProvider()
初始化此类的新实例。- 异常
-
SecurityException
- 如果已安装安全管理器且它拒绝RuntimePermission
("asynchronousChannelProvider")
-
-
方法详细信息
-
provider
public static AsynchronousChannelProvider provider()
返回此Java虚拟机调用的系统范围默认异步通道提供程序。第一次调用此方法将按如下方式定位默认提供程序对象:
如果定义了系统属性
java.nio.channels.spi.AsynchronousChannelProvider
,则将其视为具体提供程序类的完全限定名称。 该类被加载并实例化; 如果此过程失败,则抛出未指定的错误。如果提供程序类已安装在对系统类加载器可见的jar文件中,并且该jar文件在资源目录
META-INF/services
包含名为java.nio.channels.spi.AsynchronousChannelProvider
的提供程序配置文件,则将获取该文件中指定的第一个类名。 该类被加载并实例化; 如果此过程失败,则抛出未指定的错误。最后,如果没有通过上述任何方式指定提供者,则实例化系统默认提供者类并返回结果。
此方法的后续调用将返回第一次调用返回的提供程序。
- 结果
- 系统范围的默认AsynchronousChannel提供程序
-
openAsynchronousChannelGroup
public abstract AsynchronousChannelGroup openAsynchronousChannelGroup(int nThreads, ThreadFactory threadFactory) throws IOException
构造具有固定线程池的新异步通道组。- 参数
-
nThreads
- 池中的线程数 -
threadFactory
- 创建新线程时使用的工厂 - 结果
- 一个新的异步通道组
- 异常
-
IllegalArgumentException
- 如果是nThreads <= 0
-
IOException
- 如果发生I / O错误 - 另请参见:
-
AsynchronousChannelGroup.withFixedThreadPool(int, java.util.concurrent.ThreadFactory)
-
openAsynchronousChannelGroup
public abstract AsynchronousChannelGroup openAsynchronousChannelGroup(ExecutorService executor, int initialSize) throws IOException
使用给定的线程池构造一个新的异步通道组。- 参数
-
executor
- 线程池 -
initialSize
- 值>=0
或特定于实现的默认值的负值 - 结果
- 一个新的异步通道组
- 异常
-
IOException
- 如果发生I / O错误 - 另请参见:
-
AsynchronousChannelGroup.withCachedThreadPool(java.util.concurrent.ExecutorService, int)
-
openAsynchronousServerSocketChannel
public abstract AsynchronousServerSocketChannel openAsynchronousServerSocketChannel(AsynchronousChannelGroup group) throws IOException
打开异步服务器套接字通道。- 参数
-
group
- 绑定通道的组,或绑定到默认组的null
- 结果
- 新频道
- 异常
-
IllegalChannelGroupException
- 如果创建组的提供程序与此提供程序不同 -
ShutdownChannelGroupException
- 该组已关闭 -
IOException
- 如果发生I / O错误
-
openAsynchronousSocketChannel
public abstract AsynchronousSocketChannel openAsynchronousSocketChannel(AsynchronousChannelGroup group) throws IOException
打开异步套接字通道。- 参数
-
group
- 绑定通道的组,或绑定到默认组的null
- 结果
- 新频道
- 异常
-
IllegalChannelGroupException
- 如果创建组的提供程序与此提供程序不同 -
ShutdownChannelGroupException
- 该组已关闭 -
IOException
- If an I/O error occurs
-
-