- java.lang.Object
-
- java.nio.channels.spi.AsynchronousChannelProvider
-
-
构造方法摘要
构造方法 Modifier Constructor 描述 protected
AsynchronousChannelProvider()
初始化此类的新实例。
-
方法摘要
所有方法 静态方法 接口方法 抽象方法 具体的方法 Modifier and Type 方法 描述 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
-
-