找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 4961|回复: 1

关于Reactor模型接收数据的问题

[复制链接]
发表于 2008-7-13 23:05:27 | 显示全部楼层 |阅读模式
我用用APG上的Reactor模型的例子程序作为服务端.现在我写了一个客户端,它的功能就是发送数据,
peer.send_n("run:intadd",10);
peer.send_n("run:intsub",10);
现在遇到的问题就是,当Reactor模型中的ClientService接收数据时,我看到它接收的是"run:intaddrun:intsub";
而不是"run:intadd"和"run:intsub"两个消息(我认为ClientService应该是每次接收数据就调用一次handle_input(),
所以我的客户端发送两个消息,ClientService这边就应该有两次的hangle_input().)

请问这和nagle算法有关吗?另外,我在客户端程序中禁用nagle算法
peer.enble(TCP_NODELAY);
但是结果还是一样.
 楼主| 发表于 2008-7-13 23:05:33 | 显示全部楼层
你理解的有些问题,不是这样的。如果你在收取的时候也是10个字节,多次收取,结果就是你需要的。
tcp不同于UDP,是流。
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

Archiver|手机版|小黑屋|ACE Developer ( 京ICP备06055248号 )

GMT+8, 2024-11-22 02:04 , Processed in 0.012680 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表