System类中的inheritedChannel()方法有什么用途?

8

System类中发现了这种方法。只是好奇想了解一下它的相关信息 -

public static Channel inheritedChannel() throws IOException {
     return SelectorProvider.provider().inheritedChannel();
}

Java Doc的描述是:

返回从创建此Java虚拟机的实体继承的通道。该方法返回通过调用系统范围默认SelectorProvider对象的inheritedChannel方法获得的通道。


1
值得注意的是,如果您单击复制并粘贴的javadoc中的链接,它们会引导您获取更多信息。 - Brian Roach
是的..我读过那个。但对我来说没有太多意义。 - rai.skumar
那么你就没有必要使用它。如果你有需要,你会意识到它的重要性。 - user207421
10
回答问题比质疑我的意图更有建设性。 - rai.skumar
2个回答

11

4
SelectorProvider.inheritedChannel()返回:
返回从创建此Java虚拟机的实体继承的通道。
在许多操作系统上,可以以允许进程继承从创建进程的实体继承通道的方式启动进程,例如UNIX系统上,Internet服务守护程序(inetd)用于在相关网络端口上到达请求时启动程序来服务请求。在这个例子中,被启动的进程继承代表网络套接字的通道。
如果继承的通道表示网络套接字,则此方法返回的java.nio.channels.Channel类型如下确定:
- 如果继承的通道表示面向流的连接套接字,则返回java.nio.channels.SocketChannel。套接字通道至少最初处于阻塞模式,绑定到套接字地址并连接到对等方。 - 如果继承的通道表示面向流的监听套接字,则返回java.nio.channels.ServerSocketChannel。服务器套接字通道至少最初处于阻塞模式,并绑定到套接字地址。 - 如果继承的通道是面向数据报的套接字,则返回java.nio.channels.DatagramChannel。数据报通道至少最初处于阻塞模式,并绑定到套接字地址。
除了描述的面向网络的通道之外,此方法将来可能返回其他类型的通道。
第一次调用此方法会创建并返回通道。后续调用此方法将返回相同的通道。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接