ACE框架简介以及一个基于ACE的C/S服务程序实例

作者:买乌拉江

前段时间参与一个C/S结构的系统的开发,使用C++,其中server端的系统要实现Linux和windows系统的跨平台。因为系统的结构和业务逻辑都不太复杂,所以开始就决定不使用类似ACE或Boost之类的库,而是自己实现。结果在实现过程中,还是遇到了许多麻烦的地方,例如:

a) 跨平台。这一点相对比较容易,主要是针对类似多线程、socket通信等操作,定义统一的接口,使用define实现。基本上,只要定义良好,使用起来就很方便,也不需要多少改动。

b) Socket通信。在socket通信过程中,除了我们实际收发的数据,也有很多其他的数据需要处理,如keep-alive信息、socket关闭或者各种出错信息等。这些都大大增加了代码的复杂度。

c) 多线程。多线程操作socket或者数据,要考虑同步等问题

d) 对各种系统API的操作,特别是socket的操作,要有很多错误处理的代码,大大增加了代码复杂度。

e) 还有许多其他问题。

所有这些问题,不仅增加了系统的复杂度,使得程序调试以及后期维护的难度大大增加。于是,考虑使用ACE框架进行重构,主要使用ACE的事件机制重构socket通信的功能。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值