Chinaunix首页 | 论坛 | 博客
  • 博客访问: 117208
  • 博文数量: 16
  • 博客积分: 936
  • 博客等级: 准尉
  • 技术积分: 170
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-03 16:16
文章分类

全部博文(16)

文章存档

2015年(2)

2014年(1)

2012年(2)

2011年(2)

2010年(9)

分类:

2011-01-25 19:59:16

开了这往篇日志主要是记录一下在使用ACE的Acceptor-Connector框架的过程中,经常会遇到的一些问题。以后会逐渐递增。
1、使用Connector框架时,如果svc_handler对象不是由框架自动创建的,而是由用户自己指定的,那么千万注意当server端主动断开连接时,handle_close的调用不会自动delete该svc_handler对象,也就不会实现svc_handler对象的shutdown()调用,那么svc_handler对象的socket handle就仍然是打开状态,没有办法进行下次connect操作。
解决办法:
在svc_handler对象的handle_input方法中,一旦recv() = 0,说明socket断开时,主动调用 this->shutdown()方法,保证socket handle被关闭。
阅读(3035) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~