SelectorProvider.inheritedChannel()から:
このJava仮想マシンを作成したエンティティから継承されたチャネルを返します。
多くのオペレーティングシステムでは、Java仮想マシンなどのプロセスを、プロセスを作成したエンティティからプロセスがチャネルを継承できるように開始できます。これが行われる方法は、チャネルが接続される可能性のあるエンティティと同様に、システムに依存します。たとえば、UNIXシステムでは、インターネットサービスデーモン(inetd)を使用して、要求が関連付けられたネットワークポートに到着したときに、要求を処理するプログラムを開始します。この例では、開始されたプロセスは、ネットワークソケットを表すチャネルを継承します。
継承されたチャネルがネットワークソケットを表す場合、このメソッドによって返されるjava.nio.channels.Channelタイプは次のように決定されます。
継承されたチャネルがストリーム指向の接続されたソケットを表す場合、java.nio.channels.SocketChannelが返されます。ソケットチャネルは、少なくとも最初はブロッキングモードで、ソケットアドレスにバインドされ、ピアに接続されています。
継承されたチャネルがストリーム指向のリスニングソケットを表す場合、java.nio.channels.ServerSocketChannelが返されます。サーバーソケットチャネルは、少なくとも最初はブロッキングモードであり、ソケットアドレスにバインドされています。
継承されたチャネルがデータグラム指向のソケットである場合、java.nio.channels.DatagramChannelが返されます。データグラムチャネルは、少なくとも最初はブロッキングモードであり、ソケットアドレスにバインドされています。
説明されているネットワーク指向のチャネルに加えて、このメソッドは将来、他の種類のチャネルを返す可能性があります。
このメソッドの最初の呼び出しは、返されるチャネルを作成します。その後のこのメソッドの呼び出しは、同じチャネルを返します。