找回密码
 用户注册

QQ登录

只需一步,快速开始

查看: 3804|回复: 0

关于handle_read_stream()返回成功,但byte_transfered=0

[复制链接]
发表于 2009-8-3 15:20:46 | 显示全部楼层 |阅读模式
这是我的改过的 proactor_test的代码. 工作流程如下.
   sever listen at port 1133
在 void Server::handle_read_stream (const ACE_Asynch_Read_Stream::Result &result) 中
        如果有accetp到连接. server receive 数据后, 调用 this->tester_->client_list_[this->id_]->initiate_write_stream(mb,result.bytes_transferred())
在 void Client::handle_read_stream (const ACE_Asynch_Read_Stream::Result &result) 中
  如果client 收到数据后.   调用 this->tester_->server_list_[this->id_]->initiate_write_stream(mb, result.bytes_transferred())

在 server 的Open中. 增加了client 的Open
     int port =448;
  ACE_INET_Addr addr(port);
  //host = ACE_LOCALHOST;
  host = "192.168.2.40";
  if (addr.set (port, host, 1, addr.get_type ()) == -1)
   ACE_ERROR ((LM_ERROR, ACE_TEXT ("%p\n"), host));
  else rc += connector.start(addr,1);

192.168.2.40为一HTTP服务器. 我打开IE https://127.0.0.1:1133后, 可接来自 https://192.168.2.40:448的第一页信息. 接收完后, 出现了client_read_stream不停的返回
成功的回调.
代码已附上. 请大侠来看看吧.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?用户注册

×
您需要登录后才可以回帖 登录 | 用户注册

本版积分规则

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

GMT+8, 2024-11-22 23:52 , Processed in 0.017516 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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