java.lang.Object
java.nio.channels.spi.AsynchronousChannelProvider
public abstract class AsynchronousChannelProvider extends Object
非同期チャネルのサービス・プロバイダ・クラスです。
 
 非同期チャネル・プロバイダは、ゼロ引数コンストラクタを持ち、次の抽象メソッドを実装する、このクラスの具象サブクラスです。 指定されたJava仮想マシン呼出しは、providerメソッドによって返される、システム全体で単一のデフォルト・プロバイダ・インスタンスを保持します。 このメソッドの最初の呼出しは、次のデフォルト・プロバイダを検出します。 
 
このクラス内のすべてのメソッドは、複数の並行スレッドで安全に使用できます。
- 導入されたバージョン:
- 1.7
- 
コンストラクタのサマリーコンストラクタ
- 
メソッドのサマリー修飾子と型メソッド説明abstract AsynchronousChannelGroupopenAsynchronousChannelGroup(int nThreads, ThreadFactory threadFactory)固定されたスレッド・プールで新しい非同期チャネル・グループを構築します。abstract AsynchronousChannelGroupopenAsynchronousChannelGroup(ExecutorService executor, int initialSize)指定されたスレッド・プールで新しい非同期チャネル・グループを構築します。abstract AsynchronousServerSocketChannel非同期のサーバー・ソケット・チャネルを開きます。abstract AsynchronousSocketChannel非同期のソケット・チャネルを開きます。static AsynchronousChannelProviderprovider()このJava仮想マシン呼出しのためのシステム全体のデフォルト非同期チャネル・プロバイダを返します。
- 
コンストラクタの詳細- 
AsynchronousChannelProviderprotected AsynchronousChannelProvider()このクラスの新しいインスタンスを初期化します。- 例外:
- SecurityException- セキュリティ・マネージャがインストールされており、それが- RuntimePermission- ("asynchronousChannelProvider")を拒否した場合
 
 
- 
- 
メソッドの詳細- 
providerpublic static AsynchronousChannelProvider provider()このJava仮想マシン呼出しのためのシステム全体のデフォルト非同期チャネル・プロバイダを返します。このメソッドを最初に呼び出したとき、次の手順でデフォルト・プロバイダ・オブジェクトが検出されます。 - システム・プロパティ - java.nio.channels.spi.AsynchronousChannelProviderが定義されている場合、具象プロバイダ・クラスの完全修飾名になります。 その後、クラスがロードされ、インスタンスが作成されます。
- システム・クラス・ローダーの認識するjarファイルにプロバイダ・クラスがインストールされていて、このjarファイルにリソース・ディレクトリ - META-INF/services内のプロバイダ構成ファイル- java.nio.channels.spi.AsynchronousChannelProviderが含まれている場合、そのファイルに指定されている最初のクラス名が使用されます。 その後、クラスがロードされ、インスタンスが作成されます。
- 最後に、上記の手段で指定されたプロバイダが存在しない場合は、システムのデフォルト・プロバイダ・クラスのインスタンスが作成され、結果が返されます。 
 次回以降の呼出しでも、1回目の呼出し時に返されたプロバイダが返されます。 - 戻り値:
- システム全体のデフォルトのAsynchronousChannelプロバイダ
 
- 
openAsynchronousChannelGrouppublic abstract AsynchronousChannelGroup openAsynchronousChannelGroup(int nThreads, ThreadFactory threadFactory) throws IOException固定されたスレッド・プールで新しい非同期チャネル・グループを構築します。- パラメータ:
- nThreads- プール内のスレッド数
- threadFactory- 新規スレッドの作成時に使用するファクトリ
- 戻り値:
- 新しい非同期チャネル・グループ
- 例外:
- IllegalArgumentException-- nThreads <= 0の場合:
- IOException- 入出力エラーが発生した場合
- 関連項目:
- AsynchronousChannelGroup.withFixedThreadPool(int, java.util.concurrent.ThreadFactory)
 
- 
openAsynchronousChannelGrouppublic abstract AsynchronousChannelGroup openAsynchronousChannelGroup(ExecutorService executor, int initialSize) throws IOException指定されたスレッド・プールで新しい非同期チャネル・グループを構築します。- パラメータ:
- executor- スレッド・プール
- initialSize-- >=0の値、実装固有のデフォルトの場合は負の値
- 戻り値:
- 新しい非同期チャネル・グループ
- 例外:
- IOException- 入出力エラーが発生した場合
- 関連項目:
- AsynchronousChannelGroup.withCachedThreadPool(java.util.concurrent.ExecutorService, int)
 
- 
openAsynchronousServerSocketChannelpublic abstract AsynchronousServerSocketChannel openAsynchronousServerSocketChannel(AsynchronousChannelGroup group) throws IOException非同期のサーバー・ソケット・チャネルを開きます。- パラメータ:
- group- チャネルのバインド先のグループ、またはデフォルト・グループにバインドする場合は- null
- 戻り値:
- 新しいチャネル
- 例外:
- IllegalChannelGroupException- グループを作成したプロバイダがこのプロバイダと異なる場合
- ShutdownChannelGroupException- グループがシャットダウンしている場合
- IOException- 入出力エラーが発生した場合
 
- 
openAsynchronousSocketChannelpublic abstract AsynchronousSocketChannel openAsynchronousSocketChannel(AsynchronousChannelGroup group) throws IOException非同期のソケット・チャネルを開きます。- パラメータ:
- group- チャネルのバインド先のグループ、またはデフォルト・グループにバインドする場合は- null
- 戻り値:
- 新しいチャネル
- 例外:
- IllegalChannelGroupException- グループを作成したプロバイダがこのプロバイダと異なる場合
- ShutdownChannelGroupException- グループがシャットダウンしている場合
- IOException- 入出力エラーが発生した場合
 
 
-