为了账号安全,请及时绑定邮箱和手机立即绑定

如何体现设置与不设置socket.setKeepAlive()的区别?

如何体现设置与不设置socket.setKeepAlive()的区别?

MYYA 2018-09-08 16:41:07
在客户端设置socket.setKeepAlive(true, 1000),而服务器设置socket.setTimeout(2000)服务器却依然会触发timeout事件?setKeepAlive的作用不是在没有数据传输时定时发送一些包来给服务器么?
查看完整描述

1 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

socket.setKeepAlive() 意思是如果规定时间没连接,则发送一个空包确认。

socket.setTimeout() 同理,也是规定时间内没连接的话会触发,但是不会发空包确认,当然你可以通过回调函数中的 socket 来发一个确认包,这样就和 setKeepAlive 类似了,除此之外会触发 timeout 事件。


查看完整回答
反对 回复 2018-09-09
  • 1 回答
  • 0 关注
  • 776 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信