在客户端设置socket.setKeepAlive(true, 1000),而服务器设置socket.setTimeout(2000)服务器却依然会触发timeout事件?setKeepAlive的作用不是在没有数据传输时定时发送一些包来给服务器么?
1 回答
慕尼黑8549860
TA贡献1818条经验 获得超11个赞
socket.setKeepAlive() 意思是如果规定时间没连接,则发送一个空包确认。
socket.setTimeout() 同理,也是规定时间内没连接的话会触发,但是不会发空包确认,当然你可以通过回调函数中的 socket 来发一个确认包,这样就和 setKeepAlive 类似了,除此之外会触发 timeout 事件。
- 1 回答
- 0 关注
- 776 浏览
添加回答
举报
0/150
提交
取消