找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 4930|回复: 4

何谓异步接受完成,异步连接完成

[复制链接]
发表于 2008-5-11 17:22:14 | 显示全部楼层 |阅读模式
我写了个简单的前摄器服务端的例子,发现只要有连接进来,就触发open函数,按理说接收成功后因该调用
handle_accept函数,但是怎么也进不去,可能是我还没理解异步接受完成这个概念,
这和mfc的casynsocket类用起来应该类似吧
 楼主| 发表于 2008-5-11 17:22:25 | 显示全部楼层
连接完成,触发hanle_complete吧!

简单异步来说,就是发出请求直接返回,当请求完成框架自动回调hanle_complete()。。。说明连接成功建立,这样你就可以启动你的service handler线程进行处理。。。。
 楼主| 发表于 2008-5-11 17:22:51 | 显示全部楼层
Proactor的Example有很多很多,而且很实用。我学习都靠他们。
位置在:
ACE\ACE_wrappers\examples\Reactor\Proactor\
 楼主| 发表于 2008-5-11 17:22:57 | 显示全部楼层
谁能写一个能触发handle_accept的代码片段,今天跟他扛上了,

用ACE_Asynch_Acceptor<>就是没法触发他,好像有open就足够了,

用ACE_Asynch_Accept主动去接收,可是没法绑定本地端口地址
 楼主| 发表于 2008-5-11 17:23:02 | 显示全部楼层
你没理解这个ACE_Asynch_Acceptor,这个是不需要你处理handle_accept的,卷2的283页,上面有示例。
你需要处理的,就是处理器对象的open函数,这是个接口。
就是说,ACE_Asynch_Acceptor<handle_obj> 会自动处理Accept请求,自动处理handle_accept方法,你无须过问,需要处理的是handle_obj对象的open方法,和收发请求。如此而已。
ACE的设计,非常精妙,不过有时难以理解,绕人,等你理解了,就会赞叹,设计的真棒!
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

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

GMT+8, 2024-12-22 17:05 , Processed in 0.015649 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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