我希望能够设置 TCP 套接字 KEEPALIVE 参数(TCP_KEEPIDLE、TCP_KEEPINTVL 和 TCP_KEEPCNT),但这些在Socket类中似乎不可用。根据SocketImpl和SocketOptions类的文档以及本页底部有关实现细节的一些信息,我得出的结论是库实现者将setsockopt的“级别”参数硬编码为 SOL_SOCKET,这使得它无法访问其他级别的选项,例如 SOL_TCP/ IPPROTO_TCP. 我是否缺少另一个处理这些选项的 Java 类?如果没有,是否有任何方法可以获取原始文件描述符编号,以便我可以通过 JNI 将其传递给一些直接调用 setsockopt 的 C 代码,因为它似乎无法从FileDescriptor获得?
问问题
4470 次