[英]Exchanging small chunks of data over socket in Android
I need to receive small portions of data (100-300 bytes) from the server.我需要从服务器接收一小部分数据(100-300 字节)。 To do this, I use a BufferedInputStream with bufferSize = 256. Sometimes the data arrives with a very long delay.为此,我使用了 bufferSize = 256 的 BufferedInputStream。有时数据到达的延迟很长。
socket.getInputStream().buffered(256)?.use {inputStream->
do {
val byteArray = ByteArray(4096)
var count = -1
try {
count = inputStream.read(byteArray)
}
catch (ex : Exception){
ex.printStackTrace()
}
if(count==-1){
break
}
}while (count>-1 && isConnected())
}
I found a solution for my problem.我找到了解决我的问题的方法。 I set我设置
socket?.receiveBufferSize = 512
socket?.tcpNoDelay = true
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.