epoll中的当出现可读事件的时候,不能recv所有数据的问题

在触发可读事件的时候,我通过recv获取数据,但是并没有获取到所有的数据,recv的时候设置的buffer size为4kb, tcp读缓冲区的最小设置也为4kb(通过 cat /proc/sys/net/ipv4/tcp_rmem查看),但是获取数据的时候发现只收到了1kb左右(实际请求大于1kb),这个是怎么回事呢?

阅读 3.8k
2 个回答

经过确认应该是tcp的慢启动导致

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进