服务器端设置了tcp_nodelay,然后两次write,每次四个字节,但是客户端还是一次性读到8个字节?
为什么tcp_nodelay选项没有生效,有谁能解释下不?
如果你是使用事件驱动的io读,你可以检查一下接受端的lowwatermark设置
可以用工具分析一下数据包,看看是接收端的问题还是发送端的问题
两次write时间间隔是不是太短了
我理解的不一定对,但我个人理解,TCP_NODELAY解决不了粘包问题,TCP_NODELAY可能会解决发送方粘包,但解决不了接收方粘包。如果理解的不对,还请大牛和大神纠正!