首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >libev套接字通信失败

libev套接字通信失败
EN

Stack Overflow用户
提问于 2013-04-04 14:42:47
回答 1查看 256关注 0票数 0

我有一个基于libev的套接字服务器,它从多个simultaneos套接字获取消息

我使用recv()从套接字接收消息。和send()来与套接字通信,问题是有时即使我执行send()并且send()的输出>0,另一端的套接字仍然什么也收不到

代码的精简版本在这里是http://pastebin.com/SM7uPkVD

(其中大部分是从互联网上剪切粘贴的)

问题是,在99%的情况下,套接字通信都能正常工作,只有在某些情况下才会失败。我是否遗漏了什么明显的东西?

EN

回答 1

Stack Overflow用户

发布于 2013-04-04 16:08:18

当使用SOCK_STREAM套接字时,不能保证多个发送会导致多个接收。特别是,您的服务器可能会一次读取124行中的多个合并请求,然后在135行中只回复一次,这会使您认为数据正在丢失。您应该检查是否为readlen > 3,以验证这一点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15804219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档