Java13 - Socket API 的重新实现

Java13 重新实现了 Java Socket API。 java.net.Socketjava.net.ServerSocket 等旧套接字 API 已被替换。

  • PlainSocketImpl 不再使用,现在 Socket API 提供者指向 NioSocketImpl。

  • 新的实现利用 java.nio 基础设施来实现更好的并发性和 i/o 控制。

  • 新实现向后兼容使用旧实现的代码。

  • 新实现现在是 Java 12 的默认实现。

  • 可以通过多种方式选择旧实现:

    • 将系统属性 jdk.net.usePlainSockteImpl 设置为 true。

    • 使用 -Djdk.net.usePlainSocketImpl 选项运行 java。

    • 更新 ${java.home}/conf/net.properties 中可用的 JDK 网络配置文件。

  • 旧实现和用于选择旧实现的系统属性将从未来版本中删除。