首先不停的从服务器读数据,我初始化了一个4096的byte数组存放数据:
byte[] bufferBytes = new byte[4096];
int len = mIn.read(bufferBytes);
然后又将数据打包成四份,逐个写入到手机串口里面,经常就会出现卡顿的现象。
这个问题折腾了好久,代码是检查一边又一边,就是找不到问题,后来将读取到的数据(即bufferBytes数组),做了一下切割处理,就是将byte数组没有数据的那部分去掉就没问题了,不再出现卡顿的现象了,主要原因可能数据太频繁了,可能每次读到的数据只有几十分个字节,却用了4096的数组去存放,就将数据增加了好多倍:
byte[] result = new byte[len];
System.arraycopy(array, 0, result, 0, len);
本文介绍了一种解决从服务器频繁读取少量数据时出现的卡顿问题的方法。通过调整byte数组大小并进行适当的切割处理,有效避免了数据处理过程中的延迟现象。

660

被折叠的 条评论
为什么被折叠?



