将本机 Winsock 套接字传递给 Java 套接字
我需要将 C++ 应用程序创建的本机 Winsock 套接字传递到应用程序中使用 java.net.Socket 连接到服务器的库。 此 Winsock 应用程序已经负责连接套接字。
如何显式设置 java.net.Socket 的套接字描述符?
I need to pass a native winsock socket created by C++ application to a library in my application that uses java.net.Socket
to connect to a server.
This Winsock appication already take care of connecting the socket.
How can I explicitly set the socket descriptor of java.net.Socket
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我在 Unix 上遇到了这样的问题,不确定同样的机制是否适用于 WinSock。
在我们的例子中,C 程序使用特殊硬件创建套接字。 C 程序生成 Java 程序并将套接字传递给它。然后,Java 程序从套接字的文件描述符构造输入/输出流,以便它可以像普通套接字一样对其进行读/写。
Java 代码片段在这里,
I encountered such a problem on Unix, not sure if the same mechanism works for you with WinSock.
In our case, a program in C creates a socket using special hardware. The C program spawns the Java program passes it the socket. The Java program then constructs input/output stream from the file descriptor of the socket so it can read/write to it just like a normal socket.
The Java code snippet is here,