请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

Socket的setReceiveBufferSize设置结果不对

Socket的setReceiveBufferSize设置结果不对

在java项目里,socket连接后加入如下代码:

 System.out.println("rsize: "+socket.getReceiveBufferSize());
 socket.setReceiveBufferSize(120);
 System.out.println("rsize: "+socket.getReceiveBufferSize());

会得到结果:

rsize: 65536
rsize: 120

但如果在安卓里加入类似代码:

Log.e("xjfjian", "rsize: "+mSocket.getReceiveBufferSize());
mSocket.setReceiveBufferSize(120);
Log.e("xjfjian", "rsize: "+mSocket.getReceiveBufferSize());

结果不确定:
安卓9,as自带模拟器:

xjfjian: rsize: 1059840
xjfjian: rsize: 2304

安卓5,夜神模拟器:

xjfjian: rsize: 1048576
xjfjian: rsize: 2240

想了解一下原因,是安卓本身的问题还是模拟器的问题?以及有没有办法规避这个问题?

正在回答 回答被采纳积分+3

1回答

Qiujuer 2019-03-26 00:57:16

这个问题应该是Android系统版本限制的问题,底层系统上有上限下限的控制。

具体的我明天看看有没有办法绕过限制哈。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信