多线程网络框架C语言,ZLToolKit: 一个基于C++11的轻量级网络框架,基于线程池技术可以实现大并发网络IO。技术交流群:542509000...

一个用C++11实现的简单易用的轻量级网络编程框架

项目初衷

多年的编程经历让我接触过多种网络开源库,譬如libevent、libev、libuv、boost.asio等等。这些开源框架有些是用C语言开发的,里面包含了各种难以阅读层层嵌套佶屈聱牙的宏,学习起来非常费力;有些使用起来又不甚方便,代码被切割成碎片零零碎碎;有些虽然使用简单,但是却非常宏大,牵涉各种代码,配置复杂,很难交叉编译。由于作者既从事过linux服务器编程又有jni、ios的编程经历,所以一直以来在寻求既能在服务器端高效运行又能在嵌入式平台方便开发的方法,但是一直没有找到比较合适的方案;于是作者大约在一年前开始整理多年的工作成果积累,抽取经过时间检验证明稳定有效的代码并且参考其他成熟的框架形成了这个项目。后面在我使用该项目(初期版本)用于实际开发,一路林林总总遇到了很多问题,但是在后面几个月不间断的调试、测试、修正、优化等过程中项目代码逐渐沉淀稳定,经过长时高强度的测试之后我把代码提交到github形成了这个项目。

特性

网络库

tcp/udp客户端,接口简单易用并且是线程安全的,用户不必关心具体的socket api操作。

tcp服务器,使用非常简单,只要实现具体的tcp会话(TcpSession类)逻辑,使用模板的方式可以快速的构建高性能的服务器。

对套接字多种操作的封装。

线程库

使用线程实现的简单易用的定时器(AsyncTaskThread)。

读写锁。

信号量的封装(ios下用条件变量实现)。

自旋锁。

线程组。

简单易用的线程池,可以异步或同步执行任务

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值