找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 3264|回复: 1

使用Proactor构建服务器的CPU占满的问题

[复制链接]
发表于 2008-7-13 22:45:20 | 显示全部楼层 |阅读模式
我使用Proactor分别构建了TCP和UDP的服务器,但是每次一启动,CPU就会占用100%. 我的程序很简单:
int ACE_TMAIN(int argc, char *argv[])
{
    int iPort = 8880;

    ACE_Asynch_Acceptor<TCPServer> oTCPAcceptor;
   
    if (oTCPAcceptor.open (ACE_INET_Addr(iPort)) == -1)
    {
        return -1;
    }
     ACE_Time_Value oTime(5);
    while(true)
    {
  
      ACE_Proactor::instance ()->handle_events (oTime);
     }


return 0;
}
TCPServer从ACE_Service_Handler继承而来,重载了open()和handle_read_stream()函数。
是不是在main()里面的while()循环中需要sleep()呢?希望有高手给指点一下,谢谢。
 楼主| 发表于 2008-7-13 22:45:25 | 显示全部楼层
用proactor_run_event_loop 试试。
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

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

GMT+8, 2024-5-9 20:19 , Processed in 0.016998 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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