JEP 380:Unix域套接字通道

Michael McMahon提出了新的JDK增强建议(JEP),以将Unix域套接字支持添加到java.nio.channels包中的两个API。 套接字通道服务器套接字通道JEP 380还旨在扩展继承的通道机制,以支持Unix域套接字通道和服务器套接字通道。

JEP 380:Unix域套接字通道

McMahon写道:“对于本地的进程间通信,Unix域套接字比TCP / IP环回连接更安全,更有效。” 这就是为什么他提议增加对Unix域套接字通道的支持的原因,尤其是现在Windows 10和Windows Server 2019支持它们。

目的是使Unix域套接字通道的行为与TCP / IP通道几乎相同,并且将支持的功能是主要Unix平台和Windows所共有的功能。

还请参见:

那么,JDK如何支持Unix域套接字通道? 通过添加以下API元素:

  • 新的套接字地址类型java.nio.channels.UnixDomainSocketAddress
  • 现有java.net.StandardProtocolFamily枚举中的UNIX常量值
  • 静态open工厂方法在SocketChannelServerSocketChannel类中采用ProtocolFamily ,在Unix域套接字通道之外非常有用
  • SocketChannelServerSocketChannel类中的新规范文本将Unix域套接字通道与现有TCP / IP类型区分开
还请参见:

这些更改会影响现有代码吗? McMahon写道:“使用SocketChannelServerSocketChannel类的现有代码通常假定可以将这些API返回的SocketAddress实例盲目转换为InetSocketAddress 。 这种转换将因Unix域套接字通道而失败。”

此外,JEP指出,支持主要Unix和Windows平台上不常见的功能并不是目的。 但是,McMahon指出,如有需要,可以稍后再次讨论该主题(和不受支持的功能)。

有关更多信息,请在OpenJDK网站上查看JEP 380 ,或者通过阅读我们的Java 15新闻更新来查看它是否已针对JDK 15。

翻译自: https://jaxenter.com/jep-380-unix-domain-socket-channels-171981.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值