ACE 开发者
文章
日志
文件
圈子
论坛
业内新闻
意见建议
求职招聘
.Net技术
项目管理经验交流
常用工具
IBM Rational
敏捷技术
数据库
中间件
P2P技术
服务器端程序开发
Tcp/IP和Socket
C++学习
开发心得和读书笔记
ACE综合应用
ACE基础应用
海阔天空
您的位置:
ACE 开发者
>>
论坛
>>
服务器端程序开发
>>
查看帖子
字体:
小
中
大
ACE 服务器端 反应器能支持的数量?
peakzhang 发表于: 2008-9-21 15:08 来源:
ACE 开发者
我照着<ACE 程序员指南>第七章的例子写了一个网络服务器端的程序,发现当连接数超过61个时再向映器注册的时候返回值是-1(注册失败)
return this->reactor()->register_handler( this, ACE_Event_Handler::READ_MASK );
是不是反映器注册的数量有限制?如果有的话能不能修改这个限制?
有遇到这个问题的达人给介绍一下
最新回复
peakzhang at 2008-9-21 15:08:59
更换一下默认的反应器实现,默认用ACE_WFMO_Reactor,只能支持62个反应器,这是windows自己的限制,你可以改成ACE_Select_Reactor来破解限制。
peakzhang at 2008-9-21 15:09:24
ACE_Select_Reactor在windows下和linux下分别能支持多少个句柄?(扣除ACE_Select_Reactor以使用的句柄外)
peakzhang at 2008-9-21 15:09:44
改过来了, 测试了一下能支持1022个
ACE_Select_Reactor *select_reactor;
ACE_NEW_RETURN (select_reactor, ACE_Select_Reactor, 1);
ACE_Reactor *reactor;
ACE_NEW_RETURN (reactor, ACE_Reactor (select_reactor, 1), 1);
ACE_Reactor::instance (reactor, 1);
CClientAcceptor Accept;
Accept.reactor( ACE_Reactor::instance () );
查看全部回复
我也来说两句
最新更新主题
epoll Scalability Web Page - 性能测...
将 Linux 应用程序移植到 64 位系统上...
linux 2.6内核epoll用法举例说明...
Epoll为我们带来什么
Linux环境下的网络编程
Linux上面的I/O模型
Linux下TCP网络服务器实现源代码...
在linux下无法使用ACE_Dev_Poll_Reacto...
把ACE开发包放在Linux哪个目录下最为合...
服务器端程序的几个问题
最新回复
ACE_Select_Reactor *select_reactor;
ACE_NEW_RETURN (select_reactor, ACE_Select_Reactor, 1);
ACE_Reactor *reactor;
ACE_NEW_RETURN (reactor, ACE_Reactor (select_reactor, 1), 1);
ACE_Reactor::instance (reactor, 1);
CClientAcceptor Accept;
Accept.reactor( ACE_Reactor::instance () );