没怎么接触过socket,java也是,在写一个c++ 用socket 和java通讯的东西,很简单,
java作服务器, c++端发送100字节数据到服务器,服务器返回200字节
InputStream in;
OutputStream out;
in = clientSock.getInputStream();
out = client.getOutputStream();
pack_arg pa = pack_arg.parseFrom(in);// 用protobuf 从in 里读取,这里为什么一直阻塞着,一直到c++端closesocket了才返回
有什么办法能让c++一发数据,java里的 InputStream 立刻得到数据并且返回。 我试了在c++里发完数据后调用
shutdown(sock_, SD_SEND);
关闭输出,但是这样之后 recv 变得不阻塞了。 不知道为什么。
再总结下,我的目的就是 c++ 发送数据 -> java服务器接收数据 -> java发送数据 -> c++接收数据