找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 3570|回复: 3

Acceptor的handle接受消息为什么会吊死?

[复制链接]
发表于 2007-12-28 23:42:27 | 显示全部楼层 |阅读模式
各位老大,我现在碰到一个奇怪的问题。
我用的是TCP连接传送数据,SERVER端用acceptor模式,按照道理来讲,client向server发送数据,server会自动调用readhandler的handle_input函数,在handle_input里我会用stream去收取数据;但现在的问题是,client发送一次数据,server会进2次handle_input,这样第一次handle_input会把数据都recv了,第二次就吊死在那了,请问各位遇到过这种情况没?是什么问题了?谢谢。。
 楼主| 发表于 2007-12-28 23:42:53 | 显示全部楼层
已经查出来了,是handle_input返回一个大于0的值
 楼主| 发表于 2007-12-28 23:43:00 | 显示全部楼层
handle_input 返回大于0的话会继续出发handle_input的调用, 应该返回一个<0的值

而在handle_output 中要是返回一个《0的值的话,会出发handle_close的调用, 默认就是close, delete this 了

不知道我理解的是否正确~

斑竹能不能清楚地介绍一下ACE_Svc_Handler的handle_input, handle_output,handle_close的关系啊?
 楼主| 发表于 2007-12-28 23:43:07 | 显示全部楼层
程序员指南上面有详述。
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

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

GMT+8, 2024-12-23 03:09 , Processed in 0.015148 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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