高级套接字字节读取缓慢连接

时间:2011-11-06 08:04:05

标签: java sockets inputstream

我只是想问一个单纯的菜鸟问题...... 如果连接速度很慢,建议不要一次读取整个字节... 什么是最好的套接字读取算法?

因为我在读取套接字时经历了几次,有时字节流没有完全传输并使其成为无效数据......

目前我正在读这样的插座:

byte[] message = new byte[lengthOftheByte];
byte buffer = 0;
int count = 0;
while(count < lengthOftheByte) {
  int read = myInputStream.read();
  buffer = (byte) read;
  message[count] = buffer;
  count++;
}

它读取单个字节然后将其放入数组的元素中 它适用于单个读取过程,但不适用于线程...... :(

1 个答案:

答案 0 :(得分:1)

使用read(byte[])BufferedInputStream。但是,建议所有连接使用此技术,而不仅仅是慢速连接。如果你的连接速度很慢,那么你就是输入限制,那么你对代码所做的一切都无济于事。