有没有一种方法可以在Java NIO中使用Unix域套接字?我想使用NIO,以便在单个线程中使用选择器。
我查看了junixsocket,但它似乎只支持普通套接字,而不支持支持选择器的NIO通道。
有没有一种方法可以在Java NIO中使用Unix域套接字?我想使用NIO,以便在单个线程中使用选择器。
我查看了junixsocket,但它似乎只支持普通套接字,而不支持支持选择器的NIO通道。
JDK 16内置了对Unix域套接字的支持。这里是Oracle提供的一个使用NIO的示例:链接
我确认 XNIO 支持使用 Unix 域套接字,即“本地套接字”。除了发布说明外,以下是:
但是,没有一个 XNIO 通道实现 SelectableChannel,因此我担心您将无法使用选择器。
我建议您发布一个问题来改善这种情况,无论是在XNIO中还是在GNU ClassPath项目中,在那里LocalSocket.getSocketChannel返回null
。
junixsocket现在支持NIO、选择器等。