找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 6364|回复: 4

紧急:LINUX使用proactor问题,求大神帮助

[复制链接]
发表于 2012-9-20 10:26:50 | 显示全部楼层 |阅读模式
一个windows向linux移植的服务端程序,我已经在linux下将代码编译通过了,并且能够执行(循环等待链接请求),但是现在问题来了:当我用windows客户端链接linux服务端时,linux收到链接信号后打印出:“实时信号 0”,然后直接推出了进程。我的程序中用到来了proactor。出问题的关键程序代码如下:
ACE_Asynch_Acceptor<CRouterSession>::open (ListenAddr, 0, 0, 5, 1, 0, 0, 1, 5));
ACE_Proactor::instance ()->proactor_run_event_loop ();
其中CRouterSession类是收到链接后的服务类(注:这个类完全没有被执行)。
我知道linux对proactor的支持不是很好,但是也不至于根本不能运行啊。
小弟我实在不知道哪里出现了问题,还请各位高手指点指点。
 楼主| 发表于 2012-9-20 15:56:19 | 显示全部楼层
蝉蝉录玉 发表于 2012-9-20 14:25
支持~~支持~~

哎  好像没人关注啊
发表于 2012-9-20 23:20:16 | 显示全部楼层
在linux下面,别用Proactor。因为异步支持标准的问题,导致出现很多麻烦,直接改成reactor的epoll实现,一点都不麻烦,在论坛里面找资料即可。
 楼主| 发表于 2012-9-21 09:13:18 | 显示全部楼层
winston 发表于 2012-9-20 23:20
在linux下面,别用Proactor。因为异步支持标准的问题,导致出现很多麻烦,直接改成reactor的epoll实现,一 ...

好的,谢谢了
发表于 2012-11-12 12:21:41 | 显示全部楼层
本帖最后由 jonathanliu2004 于 2012-11-12 12:23 编辑

linux 下 配合 TProactor , 很好用, 一直用的很好。

理解其原理,其实reactor与proactor使用的技术都一样,如可采用epoll或者select, 只不过流程不同。所以reactor可以工作,proactor也可以工作。

别小马过河, 重要的是自己去尝试。
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

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

GMT+8, 2024-12-4 01:32 , Processed in 0.020437 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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