mengde007 发表于 2012-3-8 09:04:57

客户端回调2次是什么原因

直接说明原因:
我的server用的是proactor模型,客户端用的是Reactor模型,但是出来了一个比较奇怪的事情;
每次server给client发送一次消息(就2个字符),client的input都回调2次,第一次数据正常,第2次为空。
求各位帮忙分析下。:$

winston 发表于 2012-3-8 10:28:30

从理论上来说,一端端发出去的东西次数,与另外一段接收的次数,并不会完全相等。因为除了TCP的流控制,你也可以自己控制每次收发的字节。

出现这种原因,需要你仔细查找一下代码实现了。TCP不会无缘无故的少发、多发任何字节,这个可以相信。client回调2次,可能是你消息注册机制实现导致的,你查看一下回调是如何引起的。

独来读网 发表于 2012-6-13 06:34:56

第二次为空,表示断开连接的请求吧?

steven99ca 发表于 2012-8-24 05:28:35

如果是UDP/SCTP,应该是不可能的,如果是TCP,虽然奇怪但也不算错。可以查查handle的mark bits。
页: [1]
查看完整版本: 客户端回调2次是什么原因