前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Boost asio 心得笔记

Boost asio 心得笔记

作者头像
知然
发布2018-03-09 16:02:35
1.9K0
发布2018-03-09 16:02:35
举报
文章被收录于专栏:H2Cloud

Boost asio中有两点用的不爽:

1. asio中的所有对象都引用io_service

2. async_write还要自己保证内存在completed之前有效

有空要把这两点搞的更傻瓜一点,实际上在全异步模式下NET IO分配两个线程足矣,async搞一个队列,completed时候删掉,还可以通过writev优化写, 现在在做的一个redrabbit lib

就是在boost asio上封装的更傻瓜一点。

http://code.google.com/p/redrabbit/source/browse/#svn%2Ftrunk

如果再有空,想自己封装一下epoll, 不考虑移植性,很少的模板,比较简单的类关系,

看了一下asio 源码,其思路不是很复杂,但是为考虑移植性,使用了大量的模板和ifdef,可读性稍差,

我常常意识到,即使使用boost asio这样的proactor模式的io库,TCP编程仍然还是复杂,需要了解好多技术细节,

个人觉得ZeroMQ是个非常好的思路,http://www.zeromq.org/

每个项目花一两个月写tcp模块真是太蛋疼了,

要是能在巨人的肩膀上,不是更好。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2011-12-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档