[英]Lost data in TCP stream
我知道TCP不会丢失数据包,因为它是流式的。 我正在尝试使用nodejs发送带有5个“ 52”数据包的流。 它的格式应为(1,52,1,52,1,52,1,52,1,52)其中1是数据包的长度。 我在同一台PC上的C#控制台应用程序中都收到相同的流,这是什么服务器。 并且在具有本地网络中Java应用程序的android设备上。
C#输出为:
“1,52,1,52,1,52,1,52,1,52”
但是java输出看起来像:
“1,52,1,52,52,1,52,1,52”
Node.js代码:
b = new Buffer(1);
b.writeInt8(1,0);
this.sock.write(b);
this.sock.write(String.fromCharCode(event)); //event == 52
Java代码:
while(true)
{
int a = in.read(); //in is an instance of InputStream
if(a!= -1)Log.v(getTag(),""+a);
}
有人知道出什么问题吗?
提前致谢
/UPDATE:socket.bytesWritten返回10,因此不在服务器端。
好。 那是我的坏事。 在Java应用程序内部,我有一个丢失的连接处理程序,该处理程序正在读取一个字节以检查连接是否仍然有效,它是从流中获取连接的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.